UNPKG

gxc-js-data-structure

Version:

Use JavaScript to implement some data structures and algorithms

62 lines (61 loc) 1.51 kB
export declare class NodeItem { data: any; next: NodeItem | null; constructor(data: any); get [Symbol.toStringTag](): string; } export declare class LinkedList { head: NodeItem | null; constructor(); get [Symbol.toStringTag](): string; /** * 获取链表节点个数 */ get size(): number; /** * 判断是否为空链表 */ get isEmpty(): boolean; /** * 指定位置插入节点 * @param item 节点 * @param index 节点位置 */ insert(item: any, index?: number): void; /** * 更新指定位置的节点 * @param item 节点 * @param index 节点位置 */ update(item: any, index: number): any; /** * 获取指定位置的节点数据 * @param index 节点位置 */ find(index: number): any; /** * 删除指定位置的节点 * @param index 节点位置 */ removeAt(index: number): any; /** * 删除链表中满足提供的测试函数的第一个节点 * @param fn */ remove(fn: (node: any) => Boolean): any; /** * 获取指定位置的节点 * @param index 节点位置 */ private findNodeItem; /** * 判断输入的index是否合法 * @param index 索引 */ private judgedIndex; /** * 获得当前位置前一个节点(index不为0) * @param index 索引 */ private getPreviousItem; }