1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
| const linkedList = new LinkedList();
linkedList.toString()==='' linkedList.head===null linkedList.tail===null
linkedList.append(1); linkedList.append(2); linkedList.toString()==='1,2' linkedList.tail.next===null
const linkedList1 = new LinkedList(); linkedList1.prepend(2); linkedList1.head.toString()==='2' linkedList1.tail.toString()==='2' linkedList1.append(1); linkedList1.prepend(3); linkedList1.toString()==='3,2,1'
const linkedList2 = new LinkedList(); linkedList2.delete(5)===null linkedList2.append(1); linkedList2.append(1); linkedList2.append(2); linkedList2.append(3); linkedList2.append(3); linkedList2.append(3); linkedList2.append(4); linkedList2.append(5); const deletedNode= linkedList2.delete(3) deletedNode.value===3 linkedList2.toString()==='1,1,2,4,5'
const linkedList3 = new LinkedList(); linkedList3.append(1) linkedList3.append(2) linkedList3.append(3) const tailNode= linkedList3.deleteTail() tailNode.value===3 linkedList3.toString()==='1,2'
linkedList3.deleteHead() linkedList3.toString()==='2' const linkedList4= new LinkedList(); const nodeValue1 = { value: 1, key: 'key1' }; const nodeValue2 = { value: 2, key: 'key2' }; linkedList4.append(nodeValue1).prepend(nodeValue2) const nodeStringfier=value=>`key:${value.key} value:${value.value}` linkedList4.toString(nodeStringfier)==='key:key1 value:1,key:key2 value:2'
const linkedList5=new LinkedList(); linkedList5.append(1).append(2.append(3).append(4) const node= linkedList5.find({value:3}) node.value===3
const cbNode= linkedList4.find({callback:value=>value.key==='key1'}) cbNode.value.value===1
const customFunc=(a,b)=>{ if(_.isEqual(a,b)){ return 0 }else{ return -1 } } const linkedList6=new LinkedList(customFunc) linkedList6.append( { value: 1, key: 'key1' }).append( { value: 2, key: 'key2' }) const node = linkedList6.find({value: { value: 1, key: 'key1' }}) node.value.value===1 node.value.key==='key1'
const linkedList7 = new LinkedList(); linkedList7 .append(1) .append(2) .append(3); linkedList7.toString()==='1,2,3' linkedList7.reverse() linkedList7.toString()==='3,2,1'
|