пытаюсь реализовать Bubble sort для связанного списка в JavaScript. Никак не получается сделать. Искал подобные вопросы, но находил в реализацию только на C++ или Java. Буду благодарен за помощь. Внизу реализация списка.
LinkedListNode
export class LinkedListNode {
public value;
public prev;
public next;
constructor(value) {
this.value = value;
this.next = null;
this.prev = null;
}
}
LinkedList
import { LinkedListNode } from './LinkedListNode';
export class LinkedList {
private head;
private tail;
addHeadNode = (value) => {
const newLinkendListNode = new LinkedListNode(value);
if (!this.head) {
this.head = newLinkendListNode;
this.tail = newLinkendListNode;
} else {
this.head.prev = newLinkendListNode;
newLinkendListNode.next = this.head;
this.head = newLinkendListNode;
}
};
addTailNode = (value) => {
const newLinkendListNode = new LinkedListNode(value);
if (!this.tail) {
this.head = newLinkendListNode;
this.tail = newLinkendListNode;
} else {
this.tail.next = newLinkendListNode;
newLinkendListNode.prev = this.tail;
this.tail = newLinkendListNode;
}
};
getByIndex = index => {
let currentNode = this.head;
let count = 0;
while (currentNode) {
if (count === index) {
console.log(currentNode);
return currentNode;
}
count++;
currentNode = currentNode.next;
}
return -1;
};
}