2020.코딩일지

[자료구조/알고리즘] 재귀.JSON [BEB 6th]011일차 본문

algorithm

[자료구조/알고리즘] 재귀.JSON [BEB 6th]011일차

개발하는라푼젤 2022. 7. 19. 10:12
728x90
코드스테이츠 블록체인 부트캠프 6기 

💃재귀란?

어떤 문제를 동일한 구조의 더 작은 문제로 나누어, 이 작은 문제를 해결함으로써 전체문제를 해결한다! (😎크멋지다)

 

💃recursion재귀의 장점! 

더욱 간결하고 이해하기 쉽다. 그리고 알고리즘문제의 많은 부분을 차지한다.

 

💃재귀적으로 사고하는 법

[ 잘개쪼개기 -> 재귀적사고 -> 함수자신의 재귀적호출 -> 탈출조건 ]

 

💃재귀는 언제 사용하는 게 좋을까?

  •  주어진 문제를 비슷한 구조더 작은 문제로 나눌 수 있는 경우
  •  중첩된 반복문(while 또는 for) 이 많거나 반복문의 중첩 횟수(number of loops)를 예측하기 어려운 경우

 

💃재귀적 사고를 통해 재귀함수를 base case와 recursive case로 나눠서 작성할 수 있다.

??

 

💃재귀 함수의 활용(트리구조)

트리 구조에 재귀 함수를 사용하는 이유는?

JSON 구조에 재귀 함수를 활용

DOM 구조에 재귀 함수를 활용

실생활에 사용되는 유용한 Tree구조는?

깊이를 앞 수 없는 Tree구조에 재귀 함수를 활용하여 모두 순회(traverse)할 수 있다.

 

JSON

JavaScript Object Notation

데이터 교환을 위해 만들어진 객체 형태의 포맷. 대표적인 🎄트리구조.

객체의 값으로 객체를 포함하는 구조 = (재귀사용하기 딱 좋은 구조!ㅋ) = 전형적인 재귀 탐색이 가능하다

 

전송 가능한 조건 (transferable condition)

  •   수신자(receiver)와 발신자(sender) 같은프로그램 사용
  •   문자열처럼 범용적으로 읽을 수 있어야 한다.

 

 

`JSON.stringify` : Object type을 JSON으로 = 직렬화(serialize)

`JSON.parse` : JSON Object type(객체형태)으로 = 역직렬화(deserialize)

JSON의 기본 규칙

  자바스크립트 객체 JSON
키는 따옴표 없이 쓸 수 있음 반드시 "" 붙여야 함
문자열 값 문자열 값은 어떠한 형태의 따옴표도 사용가능 반드시 "" 감싸야 함
키와 값 사이, 그리고 키-값 쌍 사이에는 공백ㄴㄴ (꼭붙어있으시오 👩‍❤️‍👨)

 

 

 

Comments