1
0
Fork 0
Obsidian 管理的个人笔记仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

961 B

数组转换成链表

interface LinkedList {
	value: Number | null;
	next: LinkedList | null;
}

const toLinkedList = (array: Number[]): LinkedList => {
	let linkedList: LinkedList = {
		value: null,
		next: null,
	};
	
	const endLength = array.length - 1;
	for (let index = endLength; index >= 0; index--) {
		linkedList = {
			value: array[index],
			next: index === endLength ? null : linkedList,
		};
	}
	
	return linkedList;
};

反转单向链表

interface LinkedList {
	value: Number | null;
	next: LinkedList | null;
}

const reverseLinkedList = (LinkedList: LinkedList) => {
	let preNode: LinkedList | null = null;
	let curNode: LinkedList | null = LinkedList;
	let nexNode: LinkedList | null = LinkedList.next;

	while (curNode) {
		curNode.next = preNode;
		preNode = curNode;
		if (nexNode == null) break;
		curNode = nexNode;
		nexNode = nexNode.next;
	}

	return curNode;
};

使用链表实现队列