전체 글400 [Java] 이진 탐색 트리 - 재귀 형태 구현 이진 탐색 트리에 대해 공부하다가, 재귀 형태 구현이 잘 이해되지 않아 정리해본다. import java.util.LinkedList; import java.util.Queue; class BinarySearchTree { Node head; BinarySearchTree(int key) { this.head = new Node(key, null, null); } public Node addNodeRecursive(Node cur, int key) { if (cur == null) { return new Node(key, null, null); } if (key < cur.key) { cur.left = addNodeRecursive(cur.left, key); } else { cur.right = ad.. 2024. 2. 5. [Silver_II] 백준 - 11725. 트리의 부모 찾기 : Java 11725번: 트리의 부모 찾기루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오.www.acmicpc.net 이해하기root 노드는 항상 1첫째 줄의 수는 노드의 총 개수 (root 노드 포함)1 6 과 같은 형식의 입력은 1번 노드와 6번 노드가 연결되어 있음을 의미 우리가 출력해야 하는 부분은 2~7번 노드 각각의 부모 노드들이다! 문제풀이사실 이 문제는 잡고 고민하다가 도저히 길이 보이지 않아 다른 분들의 코드를 참고하며 풀었다.알고리즘 수업을 분명 들었는데도 기억이 안 나는 magic... 내 머리 속의 지우개다.DFS, BFS 복습을 해야겠다!! 루트 노드 1 방문1의 인접한 노드는 4와 61이 루트 노드이기 때문에.. 2024. 2. 2. [ZB] 어떤 백엔드 개발자가 되고 싶은지 소통하는 개발자 캡스톤 디자인, 개발동아리 스터디 등등 다른 사람들과 협업하여 개발을 해야하는 상황이 자주 있었다. 그럴 때마다 항상 어려웠던 점이 바로 소통이었다. 개발동아리 스터디의 경우, 유일한 전공자인 내가 개발 파트를 거의 독차지했다. 나에게 주어진 일이 너무 과중했음에도 숫기가 없었기에 끝까지 말하지 못하고 혼자서 게임을 완성했던 경험이 있다. 캡스톤 디자인도 팀원 모두가 서로 배려하느라 혼자서는 맡은 파트에 대한 구현에 어려움이 있었음에도 불구하고, 거의 이야기하지 않아 결과물이라고 할 것도 제대로 내지 못하였다. 이 외에도 소통의 어려움을 겪었던 다양한 경험을 통해 소통의 중요성을 뼈저리게 깨달았다. 개발자는 혼자 일하지 않는다. 개발은 협업이며, 좋은 협업은 좋은 의사소통을부터 만들어진다.. 2024. 2. 2. [OS] 쉽게 배우는 운영체제 2장 연습문제/심화문제 연습문제 1. CPU의 구성에 대해 설명하시오. 산술논리 연산장치(ALU), 제어장치, 레지스터로 구성되어 있다. 2. 폰노이만 구조의 가장 중요한 특징을 설명하시오. 모든 프로그램은 메모리에 올라와야 실행할 수 있다. 3. 버스의 종류를 나열하시오. 제어 버스, 주소 버스, 데이터 버스 4. 단방향 버스에 대해 설명하시오. 주소 버스가 있다...? 자료가 한 방향으로 전달되는 버스 5. 다음에 실행할 명령어의 주소를 가지고 있는 레지스터는 무엇인가? 프로그램 카운터(PC) 6. 현재 실행 중인 명령어를 보관하는 레지스터는 무엇인가? (문제가 이상하다는 글을 찾아 수정함!) 명령어 레지스터(IR) 7. 메모리 주소를 보관하는 레지스터는 무엇인가? 메모리 주소 레지스터(MAR) 8. 메모리에 저장할 데이터.. 2024. 2. 2. [OS] Ch.2 컴퓨터의 구조와 성능 향상 1. 컴퓨터의 기본 구성 하드웨어의 구성 컴퓨터는 중앙처리장치(CPU), 메인메모리, 입력장치, 출력장치, 저장장치로 구성 중앙처리장치와 메인메모리는 필수 장치로 분류됨 메인메모리는 전력이 끊기면 데이터를 잃어버리기 때문에 하드디스크나 USB 메모리가 필요 메인메모리를 제1 저장장치, 하드디스크나 USB메모리를 제2 저장장치 또는 보조 저장장치라고 부름 CPU : 명령어를 해석하여 실행하는 장치 메모리 : 작업이 필요한 프로그램과 데이터를 저장하는 장소 입출력 장치 : 입출력 장치를 통해 데이터를 입력/출력 저장장치의 경우 메모리는 전자의 이동으로 빠르지만 하드디스크나 CD 같은 경우 물리적인 동작으로 속도가 느림 메모리는 빠르지만 비싸고 용량이 적음 / 휘발성 데이터 보조저장장치는 느리지만 싸고 용량이.. 2024. 2. 2. [OS] 쉽게 배우는 운영체제 1장 연습문제/심화문제 연습문제 1. 사용자에게 편리한 인터페이스 환경을 제공하고 컴퓨터 시스템의 자원을 효율적으로 관리하는 소프트웨어는 무엇인가? 운영체제 2. 가전제품과 같이 CPU의 성능이 낮고 메모리 크기도 작은 시스템에 내장하도록 만든 운영체제를 무엇이라고 하는가? 임베디드 운영체제 3. 사용자가 원하는 기능을 수행하기 위해 컴퓨터 자원을 사용하는 소프트웨어는 무엇인가? 응용 프로그램 4. 운영체제가 없는 컴퓨터에서는 어떤 문제가 발생하는지 설명하시오. 작동은 되지만, 기능에 제약이 따른다. 만든 당시 기능 외에 기능을 추가하거나 향상하기가 매우 어렵고 번거롭다. 5. 기계와 사용자 사이에 명령을 전달하고 처리한 결과를 알려주는 것을 무엇이라고 하는가? 운영체제 인터페이스 6. 프로그램과 데이터를 한 번에 입력한 후 .. 2024. 2. 2. 이전 1 ··· 33 34 35 36 37 38 39 ··· 67 다음