js 단 방향 링크 의 기본 실현
1. 단 방향 링크 의 패키지
싱글 체인 시 계 는 양 방향 링크 와 마찬가지 로 js 의 인용 유형 은 잘 모 르 겠 습 니 다. 이곳 의 this. head 는 지침 으로 보 는 지 머리 결점 으로 보 는 지 모 르 겠 습 니 다.
저 는 여기 서 this. head 를 노드 데 이 터 를 복사 하 는 동시에 this. head 의 것 을 지침 으로 삼 아 첫 번 째 새로운 노드 를 가 리 켰 습 니 다. (이렇게 생각 하지 않 으 면 더 이상 볼 수 없습니다) 제 생각 대로 첫 번 째 노드 를 삽입 할 때 는... this. head. next = new Node. 먼저 이 지식 을 기록 해 보 세 요.
잠시
function Node(data){
this.data=data;
this.next=null
}
//
this.head=null
this.length=0;
2. 끝부분 에 노드 추가
LinkedList.prototype.append=function(data){
var newNode=new Node(data)
if(this.length==0){
this.head=newNode
} else {
//
var current=this.head
while(current.next){
current=current.next
}
// next
current.next=newNode
}
this.length+=1
}
3. 문자열 읽 기
LinkedList.prototype.toString=function(){
var current=this.head;
var listString=""
while(current){
listString+=current.data+" "
current=current.next
}
return listString
}
4. 어떤 데이터 값 가 져 오기
LinkedList.prototype.get=function(position){
if(position<0||position>=this.length) return null
var current=this.head
var index=0
while(index++
5. 존재 치 여부
LinkedList.prototype.indexOf=function(data){
var current=this.head
var index=0
while(current){
if(current.data=data){
return inddex
}
current=current.nextindex+=1
}
return -1
}
6. 업데이트 값
LinkedList.prototype.update=function(position,newData){
if(position<0||position>=this.length)return false
var current=this.head
var index=0
while(index++
7. 데이터 삭제
LinkedList.prototype.removeAt=function(position){
if(position<0||position>=this.length)return null
var current=this.head
if(position==0)
{
this.head=this.head.next
} else {
var index=0
var previous=null
while(index++
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[2022.04.19] 자바스크립트 this - 생성자 함수와 이벤트리스너에서의 this18일에 this에 대해 공부하면서 적었던 일반적인 함수나 객체에서의 this가 아닌 오늘은 이벤트리스너와 생성자 함수 안에서의 this를 살펴보기로 했다. new 키워드를 붙여 함수를 생성자로 사용할 때 this는...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.