JavaScript에서 체인 테이블의 실현 및 Leetcode 면접 문제 해결
소개하다.
컴퓨터 과학에서 데이터 구조는 데이터 조직, 관리와 저장 형식으로 효율적인 접근과 수정을 실현할 수 있다.데이터 구조는 대량의 데이터를 효과적으로 관리하는 방법을 제공하여 대형 데이터베이스와 인터넷 인덱스 등의 용도에 사용한다.
여러 가지 유형의 데이터 구조가 있는데, 수조, 체인 테이블, 기록, 병합, 두 갈래 나무와 그림을 포함한다.
본고에서 우리는 체인 시계, 그 실현, 우리가 체인 시계에서 집행할 수 있는 각종 방법, 그리고 인터뷰 문제를 소개할 것이다.
무엇이 체인 시계입니까?
체인 테이블도 목록이라고 하는데 노드라고 불리는 원소의 선형 집합이다.노드는 모든 데이터 형식(기본 또는 비기본)이 될 수 있습니다.각 노드에는 값이 있으며 링크 목록의 다음 노드를 가리킵니다.i, e 노드는 다음 노드를 안다.
체인 테이블은 수조에 버금가는 두 번째 큰 데이터 구조로 수조와 유사하다.체인 테이블의 입구점은 헤드라고 하고, 마지막 노드는null을 가리킨다.만약 체인 시계가 비어 있다면, 머리는 비어 있다.
체인 테이블 유형
체인 테이블에는
three
의 기본 유형이 있습니다. 즉,왜 체인 시계를 사용합니까?
array와 같이linkedlist는 선형 데이터 구조로 데이터 추가, 삭제, 삽입 등 모든 작업을 수행할 수 있다.다음은 체인 테이블의 장점입니다.
체인 테이블의 한계성
체인 테이블과 수조의 시간 복잡성과 큰 O 기호!
구현 체인 테이블
LinkedList
와 head
를 tail
로 초기화하고 길이를 0으로 초기화합니다.null
키워드를 사용하여 접근할 수 있습니다.종합하다
일부 Linkedlist 방법
Prepend(): 이 메서드는 목록의 시작 부분에 노드를 추가합니다.
printData(): 목록의 모든 노드를 인쇄합니다.노드, 포인터 및 다음 노드를 표시합니다.
append (): 이 방법은 새 노드를 체인 테이블의 마지막 노드로 추가합니다.
getLength(): 목록의 길이를 반환합니다.
find (): 이 방법은 매개 변수로 전달되는 노드를 찾습니다.찾을 수 없으면 로 돌아갑니다
new
.delete(): 매개 변수에서 인용된 노드를 삭제합니다.
code snippets available on
LetCode 인터뷰
Question 1
문제 1의 해결 방법
해석하다
링크dlist의 노드를 삭제하려면 포인터를 목표 앞의 다음 노드로 이동해야 합니다.
node.val = node.next.val ;
Basically saying, where we have
5
as theval
, replace it with nextval
which is1
. this remove 5 from the node.
node.next = node.next.next;
here, our node is an array, [4,5,1,9]. our
node.next.next
will be [1,9]. This delete the node and its value.
요약
본고에서 우리는
null
, 서로 다른 유형linkedlist
, linkedlist
에 비해 장점과 한계성, 사용할 수 있는 몇 가지 방법과 leetcode 문제의 해결 방안을 토론했다.읽어주셔서 감사합니다.
너는 내가 새로운 문장을 발표할 때 통지를 받고 싶니?클릭here
ISIAKA ABDULAHI
Reference
이 문제에 관하여(JavaScript에서 체인 테이블의 실현 및 Leetcode 면접 문제 해결), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/isiakaabd/implementation-of-linked-list-in-javascript-and-solution-to-leetcode-interview-question-35ld텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)