1. 이진트리가 균형이 맞는지 알아내는 코드를 작성하라. 균형이 맞는 다는 것은 아무 노드나 선택했을 때 그 노드의 두 서브트리의 높이 차가 1보다 크면 안된다.
2. 푸시, 팝, 최소값 이 세개의 연산을 지원하는 하나의 스택 알고리듬을 만들어라. 즉, 스택에 대해 언제든 push, pop, min 을 할 수 있어야 하고 시간복잡도는 O(1)이 되도록 하라
3. 싱글 링크드 리스트에서 뒤로부터 N번째 노드 값을 구하는 알고리듬을 만들어라
4. 싱글 링크드 리스트 중간 아무 노드나 주어졌을 때 그 노드를 제거하는 알고리듬을 만들어라. 예) a->b->c->d->e 에서 c 제거: a->b->d->e
자기 전에 아이디어라도 싸고 자라.
야 이거 문제당 한 5분씩 두뇌체조 용으로 보니 의외로 재미있네 ㅋㅋ
5분씩 두뇌체조 용으로 봤다는건 풀진 못했다는거야?
ㄴ 얌마 아이디어는 있는데 귀찮아서 구현은 안한다는 의미. 포봄아 이런 인터뷰는 니 생각을 어떤식으로 하나 보려고 하는 거야. 확실한 답안이라 판단되는 순간 아이디어나 슈도코드라도 바로 싸라
ㄴ 낚시는 하지 말고
얌마 넌 뭐 털어봐야 먼지도 안날껀데 내가 널 뭐하러 털어 ㅋㅋ
짬밥이 얼마나 되는지는 모르겠지만 저런 것을 그냥 우습게 넘기기만하다간 자만심에 사로잡혀 결국 도태될 거다. 물론 니가 따로 공부하는 게 있다면 내 말은 그냥 쓸데없는 오지랖에 불과하지만
얌마 종이에 연필로 끄적이고 눈으로 확인하고 제대로 된 아이디어 내봐봐 좀! 낚시 하지 말고
ㅁㄴㅇ/얌마 그래서 밑에 아까 사놓고 안본 책 꺼냈데잖냐. ㅅㅂ 그책은 이런 문제에 비하면 존나 어려움.
대학 1.5 학년 수준.
ㄴ 아 그 책ㅋㅋㅋㅋ 그 게시물 닉을 안봤다 미안. 그거할 짬밥이면 이건 그나마 머리로 짤 수도 있는 거긴 하지.
1. 왼쪽거 높이 잰다, 오른쪽거 높이 잰다, 비교한다
2. 넣는다, 뺀다, 계속뺀다 최소값 찾는다
1번은 뭔말이냐? 그냥 리프노드의 높이차가 2이상 안나는 경우 말하는건가?
바로 떠오른 아이디어는 그냥 재귀돌아서 리프노드일때 레벨을 전부 적어두고 그걸 배열에다 적어논다음 소팅 돌리고 첫번째인덱스랑 마지막 인덱스 비교하면 될듯... 좀더 생각해보면 효율적인 알고리즘이 생각날거같은뎀
최근대박yang빵 정보공유! 월천club 쉽다! ㅌ nete77