LeetCode 데이터 구조의 기초 지식: 데이터 구조
지식 포인트 기록:
배열
두 손가락 침 법 은 흔히 볼 수 있 는 것 이 있다.
이분법 은 이분법 이 시간 복잡 도의 장점 을 찾 는 것 을 감안 하여 일부 배열 의 검색 문제 에 대해 우 리 는 먼저 배열 을 정렬 한 다음 에 2 분 으로 찾 는 방식 을 사용 할 수 있다.여기에 세 개의 이분법 템 플 릿 을 참고 할 수 있 습 니 다. 이분법 템 플 릿 은 이분법 에 대해 마지막 으로 요소 가 남지 않 을 수 있 습 니 다. 나머지 하나, 나머지 두 개, 구체 적 인 상황 에 따라 선택 할 수 있 습 니 다. 대열 & 창고
대열 의 기본 조작 범위 우선 검색 (BFS) BFS 의 주요 특징 은 한 층 한 층 검색 하 는 것 이다. 목 표를 찾 을 때 까지 즉시 찾 지 않 으 면 가장 먼저 찾 은 목표 가 있 는 층 차 는 가장 짧 은 거리 나 가장 가 까 운 것 이다. Stack 은 스 택 의 선진 적 인 특성 에 대해 이런 특성 을 먼저 나타 내 고 선후 순 서 를 가 진 데 이 터 를 처리 할 수 있다. 깊이 우선 검색 (DFS) 이 가능 한 모든 경 로 를 옮 겨 다 닙 니 다. 체인 테이블
단일 체인 표 기본 조작 단일 포인터 로 링크 를 옮 겨 다 니 기 더 블 포인터 로 링크 를 옮 겨 다 니 기 (속도 포인터) 더 블 링크 기본 조작 해시 시계
디자인 해시 표 디자인 해시 집합 해시 대상 을 사용 할 때 키 값 을 어떻게 선택 합 니까 이 진 트 리
옮 겨 다 니 기: 앞 순서 옮 겨 다 니 기, 중간 순서 옮 겨 다 니 기, 뒤 순서 옮 겨 다 니 기, 차원 옮 겨 다 니 기 재 귀 와 스 택 을 사용 하여 나무의 일부 문 제 를 해결 합 니 다 이 진 트 리 의 직렬 화 와 반 직렬 화 두 갈래 검색 트 리 (Binary SearchTree)
BTS 정의 검증 BST: 중간 순서 (왼쪽, 오른쪽), 옮 겨 다 니 는 값 은 작은 것 에서 큰 것 으로 배열 되 어 있 습 니 다. 이 점 을 사용 하여 두 갈래 검색 트 리 를 검증 할 수 있 습 니 다. BST 기본 동작: 검색, 삽입, 삭제 고도 균형 이 진 트 리 검증: BST + 이 진 트 리 의 각 노드 의 좌우 두 개의 트 리 의 높이 차 이 는 절대 1 을 초과 하지 않 습 니 다.
질서 있 는 배열 을 고도 균형 이 진 트 리 로 전환 흔히 볼 수 있 는 고도 균형 이 진 트 리: 붉 은 검 은 나무;AVL 트 리;나무 펴 기;나무 더미 N 진 트 리
N 포크 트 리 의 옮 겨 다 니 기: 앞 순서, 뒤 순서, 차원 접두사
접두사 트 리 의 삽입 과 검색 실현 접두사 트 리 의 특성 을 이용 하여 문자 검색 PS
:
나의 LeetCode 홈 페이지:https://leetcode-cn.com/soledadvac/ GitHub 부분 코드:https://github.com/SoledadVac/CommonLibForJava/tree/master/src/test/java/leetcode