분류 전체보기69 java 스터디 3주차 3-1)연산자연산자의 종류산술연산자 증감연산자비교연산자논리연산자대입연산자삼항연산자연산자와 피연산자연산자는 기호를, 피연산자는 숫자를 의미. 3-2)문자열 더하기+ 기호를 통해 문자열을 합칠 수 있다. 문자열+ 숫자의 경우 자바가 숫자를 문자열로 바꿔서 출력시켜줌 3-3)연산자 우선순위java의 연산자 우선순위는 수학적 연산에서의 우선순위와 같음.괄호를 사용하여 우선순위를 조절해 줄 수 있음.연산이 복잡할 경우 괄호로 식을 명시적으로 표현해주는 것이 더 좋다.괄호단항 연산자산술연산자shift 연산자비교 연산자등식 연산자비트 연산자논리연산자삼항연산자대입 연산자 일반적으로 상식선에서 우선순위를 따지면 된다.우선순위가 애매할 경우 괄호를 사용하면 된다! 3-4)증감연산자증가 및 감소 연산자++;--;변수의 .. 2024. 5. 4. 자료구조 스터디 3주차 3-1)깊이 우선 탐색 DFS가장 많이 사용되는 탐색 방법.깊이우선 탐색: 그래프 완전 탐색 기법중 하나. 시작 노드에서 출발하여 한 쪽 분기를 정해 최대 깊이까지 탐색을 마친 후 다음 분기로 너머가 탐색을 수행.재귀 함수, 스택 자료구조를 이용한다. 시간 복잡도: O(노드 수+엣지 수)깊이 우선 탐색에서 재귀함수를 이용하므로 스택 오버플로우에 유의해야 함. 한번 방문한 노드를 다시 방문하지 않으므로 노드 방문 여부를 페크할 배열이 필요하다. 대부분 인접리스트로 표현.후입선출의 특성을 가진다. 실제로는 스택 자료구조보다 스택의 성질을 갖는 재귀함수로 구현하는 경우가 더 많다. [수행과정] 1. dfs를 시작할 노드를 정한 후 사용할 자료구조(인접리스트)를 초기화한다. 2. 스택에서 노드를 꺼내고.. 2024. 5. 4. 자료구조 스터디 2주차 2-1) 버블정렬 로직이 단순하고 구현이 쉽다는 장점이 있다. 데이터의 인접요소끼리 먼저 비교하고 swap을 통해 정렬한다. 시간복잡도는 n^2으로 다른 정렬보다 많은 시간이 걸린다. 앞에서부터 뒤로가며 요소를 비교해 정렬하여 맨 마지막 인덱스에 위치하게되는 요소는 가장 큰 요소인게 확정된다. 따라서 루프를 1회 실행할때 마다 마지막에 위치하게되는 요소가 확정되어 n^2의 시간복잡도를 가지게 된다. 만약 특정 루프의 전체 영역에서 한번도 스왑이 일어나지 않았다면 전체가 정렬되어있다는 의미이므로 루프를 탈출해도된다. 2-2) 선택정렬 최대나 최소의 데이터를 찾아가며 선택하는 방법. n^2의 시간복잡도로 빠른 방법은 아님. 정렬에 따라 최댓값또는 최솟값을 찾고 남은 정렬부분 가장 앞 데이터와 스왑하는 방식... 2024. 4. 13. java 스터디 2주차 2-1) 변수 하위 폴더 생성 방법 variable이라는 이름의 하위 폴더 생성 폴더 아래에 새로운 java class 생성! (관례상 클래스 이름의 첫 문자는 대문자로 써주기) 패키지 자바 파일을 구분하기 위한 폴더 정도임. Variable 이라는 패키지를 생성했다면 해당 패키지 파일 첫줄에 pakeage Variable; 처럼 소속된 패키지를 선언해주어야 함. 파바 파일이 위치하는 패키지와 pakeage Variable; 선언 위치가 같아야함 변수 변할 수 있는 값. 저장공간 변수의 선언과 초기화의 예시. 중복된 값들을 한번에 변경가능하게 해준다. a의 값을 변경해줬더니 출력 결과가 모두 변한 것을 확인할 수 있음. int 형 변수 정수를 보관할 수 있는 데이터 저장소. 변수를 만드는것을 변수 선언이.. 2024. 4. 13. 이전 1 ··· 13 14 15 16 17 18 다음