본문 바로가기

java16

자료구조 02. 자료구조와 알고리즘, 추상데이터타입, 재귀알고리즘 https://youtu.be/f_tNBxm4x7s?si=db5EQTvQCm0mYHWA 1. 자료구조와 알고리즘의 관계 * 자료구조는 그 자체로 여러 알고리즘을 포함하고 있다. 예를 들어 자동차 부품을 자료구조로 보고, 자동차 조립 방법을 자료구조, 알고리즘으로 볼 수 있다. 그리고 자동차를 조립하는 것은 프로그래밍 언어로 볼 수 있다. 알고리즘 표기 방법 1. 자연어를 이용한 서술적 표현 - 서술적일 뿐만 아니라 쓰는 사람에 따라 일관성, 명확성을 유지하기 어려움 - 누구라도 쉽게 이해하고 쓸 수 있어야 하는 알고리즘을 표현하는데는 한계가 있음 2. 순서도를 이용한 도식화(Flow Chart) - 명령의 흐름을 쉽게 파악할 수 있지만 복잡한 알고리즘을 표현하는데는 한계가 있음 - 간단한 알고리즘 표현에.. 2023. 10. 15.
자료구조 01. 강의 개요, 자료구조 종류 https://youtu.be/oJATUR8RZJI?si=wENBl5mGpr3rxP0U 실습 환경: Eclipse IDE 1. 자료구조 소개 자료구조란? 자료구조(Data Structure)는 자료를 저장, 조직, 관리하는 방법을 말한다. 일상 속 자료구조의 예로는 도서관이 책을 관리하는 방법을 들 수 있다. 즉, 자료구조는 문제 해결에 사용할 '부품'이다. 예를 들어 건출물을 만들기 위해서는 건축재료와 구조 모듈에 대한 이해가 필요하다. 건축 재료는 철근, 시멘트, 강화유리, 벽돌 등이 있고 구조 모듈로는 샷시, 철골, 거푸집, 배수 구조, 전기/인터넷 연결 구조를 들 수 있다. 자료구조는 프로그래밍과 문제 해결도를 위해 필요하다. 데이터와 구조 모듈에 대한 이해가 필요한 것이다. 프로그래밍 언어, 정.. 2023. 10. 15.
프로그래머스 0. 2차원으로 만들기 (자바) int n = 2; int [] num_list = {1, 2, 3, 4, 5, 6, 7, 8}; 일 때, answer는 2차원 배열이어야 한다. 따라서 int [][] answer = new int [num_list.length/n][n]; 로 설정한다. 여기서 이중배열의 인덱스 수를 위와 같이 설정한 이유는, n개의 요소를 가진 배열이 num_list/n개 만큼 있어야 하기 때문이다. 다음으로 반복문 식을 생각해보자. num_list.length / n 은 8 / 2 이므로 4이다. 즉, 4개의 배열에 각각 2개의 요소가 들어가 있어야 한다는 의미이다. 반복문을 출력했을 때 결과가 다음과 같아야 한다. 1: 1, 2 2: 3, 4 3: 5, 6 4: 7, 8 위의 결과를 출력하기 위해 이중 for문을.. 2023. 10. 8.
프로그래머스 0. 외계행성의 나이 (자바) 알파벳으로 이루어진 문자열 배열을 만들고, 100의자리, 10의자리, 1의자리 수를 각각 정수형 변수 a,b,c에 담아 문자열 배열에서 a,b,c의 인덱스 번호를 가진 문자를 answer 변수에 담으면 될 것이라고 생각했다. 이때 작성한 코드는 다음과 같다. class Solution { public String solution(int age) { int a = age/10/10; int b = age/10%10; int c = age%10; String [] alpha = {"a","b","c","d","e","f","g","h","i","j"}; String answer = alpha[a]+alpha[b]+alpha[c]; if (a == 0) { answer = alpha[b]+alpha[c]; }.. 2023. 10. 1.
728x90