2021. 11. 29 TIL

서승원·2021년 11월 29일
0

TIL

목록 보기
27/68

재귀호출( Recursive Call)
함수 안에서 자기자신을 호출해서 무한반복 하는 경우로, for/while 문을 대신해서 사용할 수 있다.

다음과 같이 사용하는데, "HelloWorld"를 출력한 뒤, 800ms 가 지나고 print() 함수 안에서 print() 함수를 다시 호출해서 반복하게 된다. 조건은 역시 static한 함수여야 바로 호출할 수 있다.

이진트리 (Binary Tree)

포인터 두개를 이용해서 아래로 이어붙이는 자료구조

위 코드에서 만든 이진 트리의 구조를 그림으로 나타내면 다음과 같다. left, right 두 개의 포인터를 가진 Node를 가리키는 인스턴스를 이용해 가지고있는 data 값의 대소에 따라 어느 포인터 방향에 데이터를 입력할지 결정한다. 작은 데이터는 left 쪽으로, 큰 데이터는 right 쪽으로 보내 데이터를 정렬시킨다.
이진 트리의 노드에 데이터를 배치할 때는, 중복을 허용하지 않고, 작으면 왼쪽 / 크면 오른쪽으로 보낸다. null 인 Node를 만나면 data를 입력한다. 라는 4가지 원칙을 지키면 된다.

profile
2년차 백엔드 개발자, crimy

0개의 댓글