최신 Javascript를 사용한 데이터 구조 및 알고리즘 소개
데이터 구조(DS)는 데이터를 효율적으로 사용할 수 있도록 구성하는 방법입니다.
알고리즘은 어떤 작업을 수행하는 방법을 설명하는 일련의 단계별 지침입니다.
데이터 구조와 알고리즘이 중요한 이유
이 기사에서는 배열, 대기열, 스택, 연결 목록과 같은 데이터 구조 및 알고리즘 목록을 살펴봅니다.
어레이
배열은 둘 이상의 값을 보유할 수 있는 특수 변수입니다.
배열 리터럴을 사용하는 것이 JavaScript 배열을 만드는 가장 쉬운 방법입니다.
const array_name = [item1, item2, ...];
예시:const snacks = ["Ice cream", "Nuggets", "Popcorn"];
어레이에서 사용 가능한 작업은 다음과 같습니다.대기줄
큐는 요소가 큐의 끝에 삽입되고 큐의 앞에서 제거되는 정렬된 요소 목록입니다. 대기열은 후입선출(LIFO) 원칙에 따라 작동하는 스택과 다른 선입선출(FIFO) 원칙에 따라 작동합니다.
대기열에는 두 가지 주요 작업이 있습니다.
대기열에 넣기
enqueue(element){
this.items[this.count] = element;
this.count ++;
}
대기열에서 빼기
dequeue(){
if (this.isEmpty()) {
return undefined;
}
let result = this.items[this.lowestCount];
delete this.items[this.lowestCount];
this.lowestCount ++;
return result;
}
스택
스택은 요소의 추가 또는 제거가 특정 순서, 즉 LIFO(Last in First Out) AND FILO(First in Last Out)를 따르는 선형 데이터 구조입니다.
다음은 배열을 사용하는 스택 클래스의 예입니다.
// Stack class
class Stack {
// Array is used to implement stack
constructor()
{
this.items = [];
}
// Functions to be implemented
// push(item)
// pop()
// peek()
// isEmpty()
// printStack()
}
다음은 스택을 구현하는 데 사용할 수 있는 작업 목록입니다.
연결된 목록
연결된 목록은 각 요소가 해당 목록의 다음 개체에 대한 포인터 또는 링크를 포함하는 별도의 개체인 선형 데이터 구조입니다. 각 요소(일반적으로 노드라고 함)에는 저장된 데이터와 다음 노드에 대한 링크라는 두 가지 항목이 포함되어 있습니다.
다음은 연결된 목록 노드의 예입니다.
// User defined class node
class Node {
// constructor
constructor(element)
{
this.element = element;
this.next = null
}
}
연결된 목록에서 사용 가능한 작업 목록
결론
데이터 구조는 깨끗하고 일관된 코드를 작성하는 데 도움이 되며 알고리즘은 문제를 더 작은 부분으로 나누고 코드로 각 부분을 해결하는 방법에 대해 신중하게 생각하는 데 도움이 됩니다. 이러한 데이터 구조 및 알고리즘 중 일부는 배열, 대기열, 스택, 연결 목록입니다. 이 기사가 귀하의 이해와 만족을 소개하기를 바랍니다.
Reference
이 문제에 관하여(최신 Javascript를 사용한 데이터 구조 및 알고리즘 소개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/collinsetemesi/introduction-to-data-structures-and-algorithms-with-modern-javascript-3kl1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)