linked-list-lib
Version:
This package contain some possibilities of implementations of linked lists
21 lines (20 loc) • 878 B
TypeScript
import { IComparator } from "../comparator.interface";
import { BaseNodeLinkedList } from "../base-node-linked-list";
import { ISinglyLinkedList } from "./singly-linked-list.interface";
export declare class SinglyLinkedList<T> implements ISinglyLinkedList<T> {
protected comparator: IComparator<T>;
protected head: BaseNodeLinkedList<T> | null;
protected tail: BaseNodeLinkedList<T> | null;
protected listSize: number;
constructor(comparator?: IComparator<T>);
firstNode(): BaseNodeLinkedList<T>;
insertInBegin(data: T): BaseNodeLinkedList<T>;
deleteNode(data: T): BaseNodeLinkedList<T> | null;
deleteFirstNode(): BaseNodeLinkedList<T> | null;
deleteLastNode(): BaseNodeLinkedList<T> | null;
traverse(): T[];
print(referenceProperty: string): string;
size(): number;
isEmpty(): boolean;
search(data: T): any | null;
}