-
[자료구조] 02. 연결 리스트■ Back-End/- Java 2019. 7. 17. 19:06
참고: http://www.yes24.com/Product/Goods/7434347?Acode=101
코딩인터뷰 완전분석
IT 인터뷰를 준비하기 위한 책이다. 이진 트리에서 이진 탐색 트리까지, 가장 자주 출제되고 활용도가 높은 자료구조 및 알고리즘 문제들을 엄선하였다. 가장 까다로운 알고리즘 문제들을 공략하는, 다섯 가지 검증된 전략을 통해, 어떤 어려운 문제도 공략하고 정복할 수 있는 방법을 터득하게 된다. 응시자들이 많이 저지르는 실수들로 어떤 것이 있는지 살펴보고, 그...
www.yes24.com
해당 문제들은 위 책에서 출제된 문제들이고, 처음엔 직접 풀어본 뒤 뒷장의 풀이를 보면서 피드백 한 내용입니다.
1. 비정렬 연결 리스트에서 중복 문자를 제거하는 코드를 작성하라.
> 임시 버퍼가 허용되지 않는 상황에서 해결 방법도 고민해보세요.
2. 단방향 연결 리스트에서, 뒤에서 k번째 원소를 찾는 알고리즘을 구현하라.
3. 단방향 연결 리스트의 중간에 있는 노드 하나를 삭제하는 알고리즘을 구현하라. 삭제할 노드에 대한 접근만 가능하다는 것에 유의하라.
4. x 값을 갖는 노드를 기준으로 연결 리스트를 나누는 코드를 작성하라. x 보다 작은 값을 갖는 노드가 x와 같거나 더 큰 값을 갖는 노드들보다 앞쪽에 오도록 하면 된다.
5. 연결 리스트로 표현된 두 개의 수가 있다고 하자. 리스트의 각 노드는 해당 수의 각 자릿수로 표현한다. 이때 자릿수들은 역순으로 배열되는데, 1의 자릿수가 리스트의 맨 앞에 오도록 배열된다는 뜻이다. 이 두 수를 더하여 그 합을 연결 리스트로 반환하는 함수를 작성하라.
7. 주어진 연결 리스트가 회문(palindrome)인지 검사하는 함수를 작성하라.
'■ Back-End > - Java' 카테고리의 다른 글
[자료구조] 03. 스택과 큐 (0) 2019.07.18 [Java] Java 8 에서 추가된 기능 사용해보기 (0) 2019.07.02 [Java] String.concat(), '+'연산자, StringBuilder, StringBuffer에 대하여 (0) 2019.07.02 [자료구조] Java로 Tree 구현하기 (0) 2019.05.19 [자료구조] 01. 배열과 문자열 (0) 2019.05.15