queue-typed 2.5.0 → 2.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.cjs +882 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs-legacy/index.cjs +882 -0
- package/dist/cjs-legacy/index.cjs.map +1 -1
- package/dist/esm/index.mjs +882 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm-legacy/index.mjs +882 -0
- package/dist/esm-legacy/index.mjs.map +1 -1
- package/dist/types/data-structures/base/index.d.ts +1 -0
- package/dist/types/data-structures/base/iterable-entry-base.d.ts +8 -8
- package/dist/types/data-structures/base/linear-base.d.ts +3 -3
- package/dist/types/data-structures/binary-tree/avl-tree.d.ts +252 -0
- package/dist/types/data-structures/binary-tree/binary-indexed-tree.d.ts +294 -0
- package/dist/types/data-structures/binary-tree/binary-tree.d.ts +527 -2
- package/dist/types/data-structures/binary-tree/bst.d.ts +505 -1
- package/dist/types/data-structures/binary-tree/red-black-tree.d.ts +399 -0
- package/dist/types/data-structures/binary-tree/segment-tree.d.ts +126 -1
- package/dist/types/data-structures/binary-tree/tree-map.d.ts +2881 -382
- package/dist/types/data-structures/binary-tree/tree-multi-map.d.ts +2867 -347
- package/dist/types/data-structures/binary-tree/tree-multi-set.d.ts +2328 -312
- package/dist/types/data-structures/binary-tree/tree-set.d.ts +2671 -277
- package/dist/types/data-structures/graph/abstract-graph.d.ts +4 -4
- package/dist/types/data-structures/graph/directed-graph.d.ts +210 -0
- package/dist/types/data-structures/graph/undirected-graph.d.ts +189 -0
- package/dist/types/data-structures/hash/hash-map.d.ts +241 -10
- package/dist/types/data-structures/heap/heap.d.ts +294 -0
- package/dist/types/data-structures/linked-list/doubly-linked-list.d.ts +360 -3
- package/dist/types/data-structures/linked-list/singly-linked-list.d.ts +318 -3
- package/dist/types/data-structures/linked-list/skip-linked-list.d.ts +380 -2
- package/dist/types/data-structures/matrix/matrix.d.ts +168 -0
- package/dist/types/data-structures/queue/deque.d.ts +319 -4
- package/dist/types/data-structures/queue/queue.d.ts +252 -0
- package/dist/types/data-structures/stack/stack.d.ts +210 -0
- package/dist/types/data-structures/trie/trie.d.ts +256 -4
- package/dist/types/interfaces/graph.d.ts +1 -1
- package/dist/types/types/common.d.ts +2 -2
- package/dist/types/types/data-structures/heap/heap.d.ts +1 -0
- package/dist/types/types/data-structures/priority-queue/priority-queue.d.ts +1 -0
- package/dist/types/types/utils/validate-type.d.ts +4 -4
- package/dist/umd/queue-typed.js +882 -0
- package/dist/umd/queue-typed.js.map +1 -1
- package/dist/umd/queue-typed.min.js +1 -1
- package/dist/umd/queue-typed.min.js.map +1 -1
- package/package.json +2 -2
- package/src/data-structures/base/index.ts +1 -0
- package/src/data-structures/base/iterable-entry-base.ts +8 -8
- package/src/data-structures/base/linear-base.ts +3 -3
- package/src/data-structures/binary-tree/avl-tree.ts +252 -0
- package/src/data-structures/binary-tree/binary-indexed-tree.ts +295 -1
- package/src/data-structures/binary-tree/binary-tree.ts +527 -2
- package/src/data-structures/binary-tree/bst.ts +505 -1
- package/src/data-structures/binary-tree/red-black-tree.ts +399 -0
- package/src/data-structures/binary-tree/segment-tree.ts +127 -2
- package/src/data-structures/binary-tree/tree-map.ts +2958 -459
- package/src/data-structures/binary-tree/tree-multi-map.ts +3069 -549
- package/src/data-structures/binary-tree/tree-multi-set.ts +2476 -460
- package/src/data-structures/binary-tree/tree-set.ts +2816 -422
- package/src/data-structures/graph/abstract-graph.ts +4 -4
- package/src/data-structures/graph/directed-graph.ts +210 -0
- package/src/data-structures/graph/undirected-graph.ts +189 -0
- package/src/data-structures/hash/hash-map.ts +246 -15
- package/src/data-structures/heap/heap.ts +294 -0
- package/src/data-structures/linked-list/doubly-linked-list.ts +360 -3
- package/src/data-structures/linked-list/singly-linked-list.ts +318 -3
- package/src/data-structures/linked-list/skip-linked-list.ts +380 -2
- package/src/data-structures/matrix/matrix.ts +169 -1
- package/src/data-structures/queue/deque.ts +320 -5
- package/src/data-structures/queue/queue.ts +252 -0
- package/src/data-structures/stack/stack.ts +210 -0
- package/src/data-structures/trie/trie.ts +257 -5
- package/src/interfaces/graph.ts +1 -1
- package/src/types/common.ts +2 -2
- package/src/types/data-structures/heap/heap.ts +1 -0
- package/src/types/data-structures/priority-queue/priority-queue.ts +1 -0
- package/src/types/utils/validate-type.ts +4 -4
package/dist/umd/queue-typed.js
CHANGED
|
@@ -752,6 +752,27 @@ var queueTyped = (() => {
|
|
|
752
752
|
|
|
753
753
|
|
|
754
754
|
|
|
755
|
+
|
|
756
|
+
|
|
757
|
+
|
|
758
|
+
|
|
759
|
+
|
|
760
|
+
|
|
761
|
+
|
|
762
|
+
|
|
763
|
+
|
|
764
|
+
|
|
765
|
+
|
|
766
|
+
|
|
767
|
+
|
|
768
|
+
|
|
769
|
+
|
|
770
|
+
|
|
771
|
+
|
|
772
|
+
|
|
773
|
+
|
|
774
|
+
|
|
775
|
+
|
|
755
776
|
* @example
|
|
756
777
|
* // basic SinglyLinkedList creation and push operation
|
|
757
778
|
* // Create a simple SinglyLinkedList with initial values
|
|
@@ -795,6 +816,27 @@ var queueTyped = (() => {
|
|
|
795
816
|
|
|
796
817
|
|
|
797
818
|
|
|
819
|
+
|
|
820
|
+
|
|
821
|
+
|
|
822
|
+
|
|
823
|
+
|
|
824
|
+
|
|
825
|
+
|
|
826
|
+
|
|
827
|
+
|
|
828
|
+
|
|
829
|
+
|
|
830
|
+
|
|
831
|
+
|
|
832
|
+
|
|
833
|
+
|
|
834
|
+
|
|
835
|
+
|
|
836
|
+
|
|
837
|
+
|
|
838
|
+
|
|
839
|
+
|
|
798
840
|
* @example
|
|
799
841
|
* // SinglyLinkedList pop and shift operations
|
|
800
842
|
* const list = new SinglyLinkedList<number>([10, 20, 30, 40, 50]);
|
|
@@ -844,6 +886,27 @@ var queueTyped = (() => {
|
|
|
844
886
|
|
|
845
887
|
|
|
846
888
|
|
|
889
|
+
|
|
890
|
+
|
|
891
|
+
|
|
892
|
+
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
|
|
896
|
+
|
|
897
|
+
|
|
898
|
+
|
|
899
|
+
|
|
900
|
+
|
|
901
|
+
|
|
902
|
+
|
|
903
|
+
|
|
904
|
+
|
|
905
|
+
|
|
906
|
+
|
|
907
|
+
|
|
908
|
+
|
|
909
|
+
|
|
847
910
|
* @example
|
|
848
911
|
* // Remove from the front
|
|
849
912
|
* const list = new SinglyLinkedList<number>([10, 20, 30]);
|
|
@@ -874,6 +937,27 @@ var queueTyped = (() => {
|
|
|
874
937
|
|
|
875
938
|
|
|
876
939
|
|
|
940
|
+
|
|
941
|
+
|
|
942
|
+
|
|
943
|
+
|
|
944
|
+
|
|
945
|
+
|
|
946
|
+
|
|
947
|
+
|
|
948
|
+
|
|
949
|
+
|
|
950
|
+
|
|
951
|
+
|
|
952
|
+
|
|
953
|
+
|
|
954
|
+
|
|
955
|
+
|
|
956
|
+
|
|
957
|
+
|
|
958
|
+
|
|
959
|
+
|
|
960
|
+
|
|
877
961
|
* @example
|
|
878
962
|
* // SinglyLinkedList unshift and forward traversal
|
|
879
963
|
* const list = new SinglyLinkedList<number>([20, 30, 40]);
|
|
@@ -965,6 +1049,27 @@ var queueTyped = (() => {
|
|
|
965
1049
|
|
|
966
1050
|
|
|
967
1051
|
|
|
1052
|
+
|
|
1053
|
+
|
|
1054
|
+
|
|
1055
|
+
|
|
1056
|
+
|
|
1057
|
+
|
|
1058
|
+
|
|
1059
|
+
|
|
1060
|
+
|
|
1061
|
+
|
|
1062
|
+
|
|
1063
|
+
|
|
1064
|
+
|
|
1065
|
+
|
|
1066
|
+
|
|
1067
|
+
|
|
1068
|
+
|
|
1069
|
+
|
|
1070
|
+
|
|
1071
|
+
|
|
1072
|
+
|
|
968
1073
|
* @example
|
|
969
1074
|
* // Access element by index
|
|
970
1075
|
* const list = new SinglyLinkedList<string>(['a', 'b', 'c', 'd']);
|
|
@@ -1000,6 +1105,27 @@ var queueTyped = (() => {
|
|
|
1000
1105
|
|
|
1001
1106
|
|
|
1002
1107
|
|
|
1108
|
+
|
|
1109
|
+
|
|
1110
|
+
|
|
1111
|
+
|
|
1112
|
+
|
|
1113
|
+
|
|
1114
|
+
|
|
1115
|
+
|
|
1116
|
+
|
|
1117
|
+
|
|
1118
|
+
|
|
1119
|
+
|
|
1120
|
+
|
|
1121
|
+
|
|
1122
|
+
|
|
1123
|
+
|
|
1124
|
+
|
|
1125
|
+
|
|
1126
|
+
|
|
1127
|
+
|
|
1128
|
+
|
|
1003
1129
|
* @example
|
|
1004
1130
|
* // Get node at index
|
|
1005
1131
|
* const list = new SinglyLinkedList<string>(['a', 'b', 'c']);
|
|
@@ -1024,6 +1150,27 @@ var queueTyped = (() => {
|
|
|
1024
1150
|
|
|
1025
1151
|
|
|
1026
1152
|
|
|
1153
|
+
|
|
1154
|
+
|
|
1155
|
+
|
|
1156
|
+
|
|
1157
|
+
|
|
1158
|
+
|
|
1159
|
+
|
|
1160
|
+
|
|
1161
|
+
|
|
1162
|
+
|
|
1163
|
+
|
|
1164
|
+
|
|
1165
|
+
|
|
1166
|
+
|
|
1167
|
+
|
|
1168
|
+
|
|
1169
|
+
|
|
1170
|
+
|
|
1171
|
+
|
|
1172
|
+
|
|
1173
|
+
|
|
1027
1174
|
* @example
|
|
1028
1175
|
* // Remove by index
|
|
1029
1176
|
* const list = new SinglyLinkedList<string>(['a', 'b', 'c']);
|
|
@@ -1054,6 +1201,27 @@ var queueTyped = (() => {
|
|
|
1054
1201
|
|
|
1055
1202
|
|
|
1056
1203
|
|
|
1204
|
+
|
|
1205
|
+
|
|
1206
|
+
|
|
1207
|
+
|
|
1208
|
+
|
|
1209
|
+
|
|
1210
|
+
|
|
1211
|
+
|
|
1212
|
+
|
|
1213
|
+
|
|
1214
|
+
|
|
1215
|
+
|
|
1216
|
+
|
|
1217
|
+
|
|
1218
|
+
|
|
1219
|
+
|
|
1220
|
+
|
|
1221
|
+
|
|
1222
|
+
|
|
1223
|
+
|
|
1224
|
+
|
|
1057
1225
|
* @example
|
|
1058
1226
|
* // Remove first occurrence
|
|
1059
1227
|
* const list = new SinglyLinkedList<number>([1, 2, 3, 2]);
|
|
@@ -1089,6 +1257,27 @@ var queueTyped = (() => {
|
|
|
1089
1257
|
|
|
1090
1258
|
|
|
1091
1259
|
|
|
1260
|
+
|
|
1261
|
+
|
|
1262
|
+
|
|
1263
|
+
|
|
1264
|
+
|
|
1265
|
+
|
|
1266
|
+
|
|
1267
|
+
|
|
1268
|
+
|
|
1269
|
+
|
|
1270
|
+
|
|
1271
|
+
|
|
1272
|
+
|
|
1273
|
+
|
|
1274
|
+
|
|
1275
|
+
|
|
1276
|
+
|
|
1277
|
+
|
|
1278
|
+
|
|
1279
|
+
|
|
1280
|
+
|
|
1092
1281
|
* @example
|
|
1093
1282
|
* // Insert at index
|
|
1094
1283
|
* const list = new SinglyLinkedList<number>([1, 3]);
|
|
@@ -1132,6 +1321,27 @@ var queueTyped = (() => {
|
|
|
1132
1321
|
|
|
1133
1322
|
|
|
1134
1323
|
|
|
1324
|
+
|
|
1325
|
+
|
|
1326
|
+
|
|
1327
|
+
|
|
1328
|
+
|
|
1329
|
+
|
|
1330
|
+
|
|
1331
|
+
|
|
1332
|
+
|
|
1333
|
+
|
|
1334
|
+
|
|
1335
|
+
|
|
1336
|
+
|
|
1337
|
+
|
|
1338
|
+
|
|
1339
|
+
|
|
1340
|
+
|
|
1341
|
+
|
|
1342
|
+
|
|
1343
|
+
|
|
1344
|
+
|
|
1135
1345
|
* @example
|
|
1136
1346
|
* // Check empty
|
|
1137
1347
|
* console.log(new SinglyLinkedList().isEmpty()); // true;
|
|
@@ -1152,6 +1362,27 @@ var queueTyped = (() => {
|
|
|
1152
1362
|
|
|
1153
1363
|
|
|
1154
1364
|
|
|
1365
|
+
|
|
1366
|
+
|
|
1367
|
+
|
|
1368
|
+
|
|
1369
|
+
|
|
1370
|
+
|
|
1371
|
+
|
|
1372
|
+
|
|
1373
|
+
|
|
1374
|
+
|
|
1375
|
+
|
|
1376
|
+
|
|
1377
|
+
|
|
1378
|
+
|
|
1379
|
+
|
|
1380
|
+
|
|
1381
|
+
|
|
1382
|
+
|
|
1383
|
+
|
|
1384
|
+
|
|
1385
|
+
|
|
1155
1386
|
* @example
|
|
1156
1387
|
* // Remove all
|
|
1157
1388
|
* const list = new SinglyLinkedList<number>([1, 2, 3]);
|
|
@@ -1178,6 +1409,27 @@ var queueTyped = (() => {
|
|
|
1178
1409
|
|
|
1179
1410
|
|
|
1180
1411
|
|
|
1412
|
+
|
|
1413
|
+
|
|
1414
|
+
|
|
1415
|
+
|
|
1416
|
+
|
|
1417
|
+
|
|
1418
|
+
|
|
1419
|
+
|
|
1420
|
+
|
|
1421
|
+
|
|
1422
|
+
|
|
1423
|
+
|
|
1424
|
+
|
|
1425
|
+
|
|
1426
|
+
|
|
1427
|
+
|
|
1428
|
+
|
|
1429
|
+
|
|
1430
|
+
|
|
1431
|
+
|
|
1432
|
+
|
|
1181
1433
|
* @example
|
|
1182
1434
|
* // Reverse the list in-place
|
|
1183
1435
|
* const list = new SinglyLinkedList<number>([1, 2, 3, 4]);
|
|
@@ -1370,6 +1622,27 @@ var queueTyped = (() => {
|
|
|
1370
1622
|
|
|
1371
1623
|
|
|
1372
1624
|
|
|
1625
|
+
|
|
1626
|
+
|
|
1627
|
+
|
|
1628
|
+
|
|
1629
|
+
|
|
1630
|
+
|
|
1631
|
+
|
|
1632
|
+
|
|
1633
|
+
|
|
1634
|
+
|
|
1635
|
+
|
|
1636
|
+
|
|
1637
|
+
|
|
1638
|
+
|
|
1639
|
+
|
|
1640
|
+
|
|
1641
|
+
|
|
1642
|
+
|
|
1643
|
+
|
|
1644
|
+
|
|
1645
|
+
|
|
1373
1646
|
* @example
|
|
1374
1647
|
* // Deep copy
|
|
1375
1648
|
* const list = new SinglyLinkedList<number>([1, 2, 3]);
|
|
@@ -1400,6 +1673,27 @@ var queueTyped = (() => {
|
|
|
1400
1673
|
|
|
1401
1674
|
|
|
1402
1675
|
|
|
1676
|
+
|
|
1677
|
+
|
|
1678
|
+
|
|
1679
|
+
|
|
1680
|
+
|
|
1681
|
+
|
|
1682
|
+
|
|
1683
|
+
|
|
1684
|
+
|
|
1685
|
+
|
|
1686
|
+
|
|
1687
|
+
|
|
1688
|
+
|
|
1689
|
+
|
|
1690
|
+
|
|
1691
|
+
|
|
1692
|
+
|
|
1693
|
+
|
|
1694
|
+
|
|
1695
|
+
|
|
1696
|
+
|
|
1403
1697
|
* @example
|
|
1404
1698
|
* // SinglyLinkedList filter and map operations
|
|
1405
1699
|
* const list = new SinglyLinkedList<number>([1, 2, 3, 4, 5]);
|
|
@@ -1458,6 +1752,27 @@ var queueTyped = (() => {
|
|
|
1458
1752
|
|
|
1459
1753
|
|
|
1460
1754
|
|
|
1755
|
+
|
|
1756
|
+
|
|
1757
|
+
|
|
1758
|
+
|
|
1759
|
+
|
|
1760
|
+
|
|
1761
|
+
|
|
1762
|
+
|
|
1763
|
+
|
|
1764
|
+
|
|
1765
|
+
|
|
1766
|
+
|
|
1767
|
+
|
|
1768
|
+
|
|
1769
|
+
|
|
1770
|
+
|
|
1771
|
+
|
|
1772
|
+
|
|
1773
|
+
|
|
1774
|
+
|
|
1775
|
+
|
|
1461
1776
|
* @example
|
|
1462
1777
|
* // Transform elements
|
|
1463
1778
|
* const list = new SinglyLinkedList<number>([1, 2, 3]);
|
|
@@ -1711,6 +2026,27 @@ var queueTyped = (() => {
|
|
|
1711
2026
|
|
|
1712
2027
|
|
|
1713
2028
|
|
|
2029
|
+
|
|
2030
|
+
|
|
2031
|
+
|
|
2032
|
+
|
|
2033
|
+
|
|
2034
|
+
|
|
2035
|
+
|
|
2036
|
+
|
|
2037
|
+
|
|
2038
|
+
|
|
2039
|
+
|
|
2040
|
+
|
|
2041
|
+
|
|
2042
|
+
|
|
2043
|
+
|
|
2044
|
+
|
|
2045
|
+
|
|
2046
|
+
|
|
2047
|
+
|
|
2048
|
+
|
|
2049
|
+
|
|
1714
2050
|
* @example
|
|
1715
2051
|
* // Track queue length
|
|
1716
2052
|
* const q = new Queue<number>();
|
|
@@ -1737,6 +2073,27 @@ var queueTyped = (() => {
|
|
|
1737
2073
|
|
|
1738
2074
|
|
|
1739
2075
|
|
|
2076
|
+
|
|
2077
|
+
|
|
2078
|
+
|
|
2079
|
+
|
|
2080
|
+
|
|
2081
|
+
|
|
2082
|
+
|
|
2083
|
+
|
|
2084
|
+
|
|
2085
|
+
|
|
2086
|
+
|
|
2087
|
+
|
|
2088
|
+
|
|
2089
|
+
|
|
2090
|
+
|
|
2091
|
+
|
|
2092
|
+
|
|
2093
|
+
|
|
2094
|
+
|
|
2095
|
+
|
|
2096
|
+
|
|
1740
2097
|
* @example
|
|
1741
2098
|
* // View the front element
|
|
1742
2099
|
* const q = new Queue<string>(['first', 'second', 'third']);
|
|
@@ -1779,6 +2136,27 @@ var queueTyped = (() => {
|
|
|
1779
2136
|
|
|
1780
2137
|
|
|
1781
2138
|
|
|
2139
|
+
|
|
2140
|
+
|
|
2141
|
+
|
|
2142
|
+
|
|
2143
|
+
|
|
2144
|
+
|
|
2145
|
+
|
|
2146
|
+
|
|
2147
|
+
|
|
2148
|
+
|
|
2149
|
+
|
|
2150
|
+
|
|
2151
|
+
|
|
2152
|
+
|
|
2153
|
+
|
|
2154
|
+
|
|
2155
|
+
|
|
2156
|
+
|
|
2157
|
+
|
|
2158
|
+
|
|
2159
|
+
|
|
1782
2160
|
* @example
|
|
1783
2161
|
* // Queue for...of iteration and isEmpty check
|
|
1784
2162
|
* const queue = new Queue<string>(['A', 'B', 'C', 'D']);
|
|
@@ -1817,6 +2195,27 @@ var queueTyped = (() => {
|
|
|
1817
2195
|
|
|
1818
2196
|
|
|
1819
2197
|
|
|
2198
|
+
|
|
2199
|
+
|
|
2200
|
+
|
|
2201
|
+
|
|
2202
|
+
|
|
2203
|
+
|
|
2204
|
+
|
|
2205
|
+
|
|
2206
|
+
|
|
2207
|
+
|
|
2208
|
+
|
|
2209
|
+
|
|
2210
|
+
|
|
2211
|
+
|
|
2212
|
+
|
|
2213
|
+
|
|
2214
|
+
|
|
2215
|
+
|
|
2216
|
+
|
|
2217
|
+
|
|
2218
|
+
|
|
1820
2219
|
* @example
|
|
1821
2220
|
* // basic Queue creation and push operation
|
|
1822
2221
|
* // Create a simple Queue with initial values
|
|
@@ -1862,6 +2261,27 @@ var queueTyped = (() => {
|
|
|
1862
2261
|
|
|
1863
2262
|
|
|
1864
2263
|
|
|
2264
|
+
|
|
2265
|
+
|
|
2266
|
+
|
|
2267
|
+
|
|
2268
|
+
|
|
2269
|
+
|
|
2270
|
+
|
|
2271
|
+
|
|
2272
|
+
|
|
2273
|
+
|
|
2274
|
+
|
|
2275
|
+
|
|
2276
|
+
|
|
2277
|
+
|
|
2278
|
+
|
|
2279
|
+
|
|
2280
|
+
|
|
2281
|
+
|
|
2282
|
+
|
|
2283
|
+
|
|
2284
|
+
|
|
1865
2285
|
* @example
|
|
1866
2286
|
* // Queue shift and peek operations
|
|
1867
2287
|
* const queue = new Queue<number>([10, 20, 30, 40]);
|
|
@@ -1897,6 +2317,27 @@ var queueTyped = (() => {
|
|
|
1897
2317
|
|
|
1898
2318
|
|
|
1899
2319
|
|
|
2320
|
+
|
|
2321
|
+
|
|
2322
|
+
|
|
2323
|
+
|
|
2324
|
+
|
|
2325
|
+
|
|
2326
|
+
|
|
2327
|
+
|
|
2328
|
+
|
|
2329
|
+
|
|
2330
|
+
|
|
2331
|
+
|
|
2332
|
+
|
|
2333
|
+
|
|
2334
|
+
|
|
2335
|
+
|
|
2336
|
+
|
|
2337
|
+
|
|
2338
|
+
|
|
2339
|
+
|
|
2340
|
+
|
|
1900
2341
|
* @example
|
|
1901
2342
|
* // Remove specific element
|
|
1902
2343
|
* const q = new Queue<number>([1, 2, 3, 2]);
|
|
@@ -1925,6 +2366,27 @@ var queueTyped = (() => {
|
|
|
1925
2366
|
|
|
1926
2367
|
|
|
1927
2368
|
|
|
2369
|
+
|
|
2370
|
+
|
|
2371
|
+
|
|
2372
|
+
|
|
2373
|
+
|
|
2374
|
+
|
|
2375
|
+
|
|
2376
|
+
|
|
2377
|
+
|
|
2378
|
+
|
|
2379
|
+
|
|
2380
|
+
|
|
2381
|
+
|
|
2382
|
+
|
|
2383
|
+
|
|
2384
|
+
|
|
2385
|
+
|
|
2386
|
+
|
|
2387
|
+
|
|
2388
|
+
|
|
2389
|
+
|
|
1928
2390
|
* @example
|
|
1929
2391
|
* // Access element by index
|
|
1930
2392
|
* const q = new Queue<string>(['a', 'b', 'c']);
|
|
@@ -1994,6 +2456,27 @@ var queueTyped = (() => {
|
|
|
1994
2456
|
|
|
1995
2457
|
|
|
1996
2458
|
|
|
2459
|
+
|
|
2460
|
+
|
|
2461
|
+
|
|
2462
|
+
|
|
2463
|
+
|
|
2464
|
+
|
|
2465
|
+
|
|
2466
|
+
|
|
2467
|
+
|
|
2468
|
+
|
|
2469
|
+
|
|
2470
|
+
|
|
2471
|
+
|
|
2472
|
+
|
|
2473
|
+
|
|
2474
|
+
|
|
2475
|
+
|
|
2476
|
+
|
|
2477
|
+
|
|
2478
|
+
|
|
2479
|
+
|
|
1997
2480
|
* @example
|
|
1998
2481
|
* // Remove all elements
|
|
1999
2482
|
* const q = new Queue<number>([1, 2, 3]);
|
|
@@ -2016,6 +2499,27 @@ var queueTyped = (() => {
|
|
|
2016
2499
|
|
|
2017
2500
|
|
|
2018
2501
|
|
|
2502
|
+
|
|
2503
|
+
|
|
2504
|
+
|
|
2505
|
+
|
|
2506
|
+
|
|
2507
|
+
|
|
2508
|
+
|
|
2509
|
+
|
|
2510
|
+
|
|
2511
|
+
|
|
2512
|
+
|
|
2513
|
+
|
|
2514
|
+
|
|
2515
|
+
|
|
2516
|
+
|
|
2517
|
+
|
|
2518
|
+
|
|
2519
|
+
|
|
2520
|
+
|
|
2521
|
+
|
|
2522
|
+
|
|
2019
2523
|
* @example
|
|
2020
2524
|
* // Reclaim unused memory
|
|
2021
2525
|
* const q = new Queue<number>([1, 2, 3, 4, 5]);
|
|
@@ -2061,6 +2565,27 @@ var queueTyped = (() => {
|
|
|
2061
2565
|
|
|
2062
2566
|
|
|
2063
2567
|
|
|
2568
|
+
|
|
2569
|
+
|
|
2570
|
+
|
|
2571
|
+
|
|
2572
|
+
|
|
2573
|
+
|
|
2574
|
+
|
|
2575
|
+
|
|
2576
|
+
|
|
2577
|
+
|
|
2578
|
+
|
|
2579
|
+
|
|
2580
|
+
|
|
2581
|
+
|
|
2582
|
+
|
|
2583
|
+
|
|
2584
|
+
|
|
2585
|
+
|
|
2586
|
+
|
|
2587
|
+
|
|
2588
|
+
|
|
2064
2589
|
* @example
|
|
2065
2590
|
* // Create independent copy
|
|
2066
2591
|
* const q = new Queue<number>([1, 2, 3]);
|
|
@@ -2090,6 +2615,27 @@ var queueTyped = (() => {
|
|
|
2090
2615
|
|
|
2091
2616
|
|
|
2092
2617
|
|
|
2618
|
+
|
|
2619
|
+
|
|
2620
|
+
|
|
2621
|
+
|
|
2622
|
+
|
|
2623
|
+
|
|
2624
|
+
|
|
2625
|
+
|
|
2626
|
+
|
|
2627
|
+
|
|
2628
|
+
|
|
2629
|
+
|
|
2630
|
+
|
|
2631
|
+
|
|
2632
|
+
|
|
2633
|
+
|
|
2634
|
+
|
|
2635
|
+
|
|
2636
|
+
|
|
2637
|
+
|
|
2638
|
+
|
|
2093
2639
|
* @example
|
|
2094
2640
|
* // Filter elements
|
|
2095
2641
|
* const q = new Queue<number>([1, 2, 3, 4, 5]);
|
|
@@ -2123,6 +2669,27 @@ var queueTyped = (() => {
|
|
|
2123
2669
|
|
|
2124
2670
|
|
|
2125
2671
|
|
|
2672
|
+
|
|
2673
|
+
|
|
2674
|
+
|
|
2675
|
+
|
|
2676
|
+
|
|
2677
|
+
|
|
2678
|
+
|
|
2679
|
+
|
|
2680
|
+
|
|
2681
|
+
|
|
2682
|
+
|
|
2683
|
+
|
|
2684
|
+
|
|
2685
|
+
|
|
2686
|
+
|
|
2687
|
+
|
|
2688
|
+
|
|
2689
|
+
|
|
2690
|
+
|
|
2691
|
+
|
|
2692
|
+
|
|
2126
2693
|
* @example
|
|
2127
2694
|
* // Transform elements
|
|
2128
2695
|
* const q = new Queue<number>([1, 2, 3]);
|
|
@@ -2373,6 +2940,27 @@ var queueTyped = (() => {
|
|
|
2373
2940
|
|
|
2374
2941
|
|
|
2375
2942
|
|
|
2943
|
+
|
|
2944
|
+
|
|
2945
|
+
|
|
2946
|
+
|
|
2947
|
+
|
|
2948
|
+
|
|
2949
|
+
|
|
2950
|
+
|
|
2951
|
+
|
|
2952
|
+
|
|
2953
|
+
|
|
2954
|
+
|
|
2955
|
+
|
|
2956
|
+
|
|
2957
|
+
|
|
2958
|
+
|
|
2959
|
+
|
|
2960
|
+
|
|
2961
|
+
|
|
2962
|
+
|
|
2963
|
+
|
|
2376
2964
|
* @example
|
|
2377
2965
|
* // Deque peek at both ends
|
|
2378
2966
|
* const deque = new Deque<number>([10, 20, 30, 40, 50]);
|
|
@@ -2407,6 +2995,27 @@ var queueTyped = (() => {
|
|
|
2407
2995
|
|
|
2408
2996
|
|
|
2409
2997
|
|
|
2998
|
+
|
|
2999
|
+
|
|
3000
|
+
|
|
3001
|
+
|
|
3002
|
+
|
|
3003
|
+
|
|
3004
|
+
|
|
3005
|
+
|
|
3006
|
+
|
|
3007
|
+
|
|
3008
|
+
|
|
3009
|
+
|
|
3010
|
+
|
|
3011
|
+
|
|
3012
|
+
|
|
3013
|
+
|
|
3014
|
+
|
|
3015
|
+
|
|
3016
|
+
|
|
3017
|
+
|
|
3018
|
+
|
|
2410
3019
|
* @example
|
|
2411
3020
|
* // Peek at the back element
|
|
2412
3021
|
* const dq = new Deque<string>(['a', 'b', 'c']);
|
|
@@ -2446,6 +3055,27 @@ var queueTyped = (() => {
|
|
|
2446
3055
|
|
|
2447
3056
|
|
|
2448
3057
|
|
|
3058
|
+
|
|
3059
|
+
|
|
3060
|
+
|
|
3061
|
+
|
|
3062
|
+
|
|
3063
|
+
|
|
3064
|
+
|
|
3065
|
+
|
|
3066
|
+
|
|
3067
|
+
|
|
3068
|
+
|
|
3069
|
+
|
|
3070
|
+
|
|
3071
|
+
|
|
3072
|
+
|
|
3073
|
+
|
|
3074
|
+
|
|
3075
|
+
|
|
3076
|
+
|
|
3077
|
+
|
|
3078
|
+
|
|
2449
3079
|
* @example
|
|
2450
3080
|
* // basic Deque creation and push/pop operations
|
|
2451
3081
|
* // Create a simple Deque with initial values
|
|
@@ -2498,6 +3128,27 @@ var queueTyped = (() => {
|
|
|
2498
3128
|
|
|
2499
3129
|
|
|
2500
3130
|
|
|
3131
|
+
|
|
3132
|
+
|
|
3133
|
+
|
|
3134
|
+
|
|
3135
|
+
|
|
3136
|
+
|
|
3137
|
+
|
|
3138
|
+
|
|
3139
|
+
|
|
3140
|
+
|
|
3141
|
+
|
|
3142
|
+
|
|
3143
|
+
|
|
3144
|
+
|
|
3145
|
+
|
|
3146
|
+
|
|
3147
|
+
|
|
3148
|
+
|
|
3149
|
+
|
|
3150
|
+
|
|
3151
|
+
|
|
2501
3152
|
* @example
|
|
2502
3153
|
* // Remove from the back
|
|
2503
3154
|
* const dq = new Deque<number>([1, 2, 3]);
|
|
@@ -2537,6 +3188,27 @@ var queueTyped = (() => {
|
|
|
2537
3188
|
|
|
2538
3189
|
|
|
2539
3190
|
|
|
3191
|
+
|
|
3192
|
+
|
|
3193
|
+
|
|
3194
|
+
|
|
3195
|
+
|
|
3196
|
+
|
|
3197
|
+
|
|
3198
|
+
|
|
3199
|
+
|
|
3200
|
+
|
|
3201
|
+
|
|
3202
|
+
|
|
3203
|
+
|
|
3204
|
+
|
|
3205
|
+
|
|
3206
|
+
|
|
3207
|
+
|
|
3208
|
+
|
|
3209
|
+
|
|
3210
|
+
|
|
3211
|
+
|
|
2540
3212
|
* @example
|
|
2541
3213
|
* // Remove from the front
|
|
2542
3214
|
* const dq = new Deque<number>([1, 2, 3]);
|
|
@@ -2577,6 +3249,27 @@ var queueTyped = (() => {
|
|
|
2577
3249
|
|
|
2578
3250
|
|
|
2579
3251
|
|
|
3252
|
+
|
|
3253
|
+
|
|
3254
|
+
|
|
3255
|
+
|
|
3256
|
+
|
|
3257
|
+
|
|
3258
|
+
|
|
3259
|
+
|
|
3260
|
+
|
|
3261
|
+
|
|
3262
|
+
|
|
3263
|
+
|
|
3264
|
+
|
|
3265
|
+
|
|
3266
|
+
|
|
3267
|
+
|
|
3268
|
+
|
|
3269
|
+
|
|
3270
|
+
|
|
3271
|
+
|
|
3272
|
+
|
|
2580
3273
|
* @example
|
|
2581
3274
|
* // Deque shift and unshift operations
|
|
2582
3275
|
* const deque = new Deque<number>([20, 30, 40]);
|
|
@@ -2658,6 +3351,27 @@ var queueTyped = (() => {
|
|
|
2658
3351
|
|
|
2659
3352
|
|
|
2660
3353
|
|
|
3354
|
+
|
|
3355
|
+
|
|
3356
|
+
|
|
3357
|
+
|
|
3358
|
+
|
|
3359
|
+
|
|
3360
|
+
|
|
3361
|
+
|
|
3362
|
+
|
|
3363
|
+
|
|
3364
|
+
|
|
3365
|
+
|
|
3366
|
+
|
|
3367
|
+
|
|
3368
|
+
|
|
3369
|
+
|
|
3370
|
+
|
|
3371
|
+
|
|
3372
|
+
|
|
3373
|
+
|
|
3374
|
+
|
|
2661
3375
|
* @example
|
|
2662
3376
|
* // Check if empty
|
|
2663
3377
|
* const dq = new Deque();
|
|
@@ -2679,6 +3393,27 @@ var queueTyped = (() => {
|
|
|
2679
3393
|
|
|
2680
3394
|
|
|
2681
3395
|
|
|
3396
|
+
|
|
3397
|
+
|
|
3398
|
+
|
|
3399
|
+
|
|
3400
|
+
|
|
3401
|
+
|
|
3402
|
+
|
|
3403
|
+
|
|
3404
|
+
|
|
3405
|
+
|
|
3406
|
+
|
|
3407
|
+
|
|
3408
|
+
|
|
3409
|
+
|
|
3410
|
+
|
|
3411
|
+
|
|
3412
|
+
|
|
3413
|
+
|
|
3414
|
+
|
|
3415
|
+
|
|
3416
|
+
|
|
2682
3417
|
* @example
|
|
2683
3418
|
* // Remove all elements
|
|
2684
3419
|
* const dq = new Deque<number>([1, 2, 3]);
|
|
@@ -2704,6 +3439,27 @@ var queueTyped = (() => {
|
|
|
2704
3439
|
|
|
2705
3440
|
|
|
2706
3441
|
|
|
3442
|
+
|
|
3443
|
+
|
|
3444
|
+
|
|
3445
|
+
|
|
3446
|
+
|
|
3447
|
+
|
|
3448
|
+
|
|
3449
|
+
|
|
3450
|
+
|
|
3451
|
+
|
|
3452
|
+
|
|
3453
|
+
|
|
3454
|
+
|
|
3455
|
+
|
|
3456
|
+
|
|
3457
|
+
|
|
3458
|
+
|
|
3459
|
+
|
|
3460
|
+
|
|
3461
|
+
|
|
3462
|
+
|
|
2707
3463
|
* @example
|
|
2708
3464
|
* // Access by index
|
|
2709
3465
|
* const dq = new Deque<string>(['a', 'b', 'c']);
|
|
@@ -2880,6 +3636,27 @@ var queueTyped = (() => {
|
|
|
2880
3636
|
|
|
2881
3637
|
|
|
2882
3638
|
|
|
3639
|
+
|
|
3640
|
+
|
|
3641
|
+
|
|
3642
|
+
|
|
3643
|
+
|
|
3644
|
+
|
|
3645
|
+
|
|
3646
|
+
|
|
3647
|
+
|
|
3648
|
+
|
|
3649
|
+
|
|
3650
|
+
|
|
3651
|
+
|
|
3652
|
+
|
|
3653
|
+
|
|
3654
|
+
|
|
3655
|
+
|
|
3656
|
+
|
|
3657
|
+
|
|
3658
|
+
|
|
3659
|
+
|
|
2883
3660
|
* @example
|
|
2884
3661
|
* // Remove element
|
|
2885
3662
|
* const dq = new Deque<number>([1, 2, 3]);
|
|
@@ -2943,6 +3720,27 @@ var queueTyped = (() => {
|
|
|
2943
3720
|
|
|
2944
3721
|
|
|
2945
3722
|
|
|
3723
|
+
|
|
3724
|
+
|
|
3725
|
+
|
|
3726
|
+
|
|
3727
|
+
|
|
3728
|
+
|
|
3729
|
+
|
|
3730
|
+
|
|
3731
|
+
|
|
3732
|
+
|
|
3733
|
+
|
|
3734
|
+
|
|
3735
|
+
|
|
3736
|
+
|
|
3737
|
+
|
|
3738
|
+
|
|
3739
|
+
|
|
3740
|
+
|
|
3741
|
+
|
|
3742
|
+
|
|
3743
|
+
|
|
2946
3744
|
* @example
|
|
2947
3745
|
* // Deque for...of iteration and reverse
|
|
2948
3746
|
* const deque = new Deque<string>(['A', 'B', 'C', 'D']);
|
|
@@ -3031,6 +3829,27 @@ var queueTyped = (() => {
|
|
|
3031
3829
|
|
|
3032
3830
|
|
|
3033
3831
|
|
|
3832
|
+
|
|
3833
|
+
|
|
3834
|
+
|
|
3835
|
+
|
|
3836
|
+
|
|
3837
|
+
|
|
3838
|
+
|
|
3839
|
+
|
|
3840
|
+
|
|
3841
|
+
|
|
3842
|
+
|
|
3843
|
+
|
|
3844
|
+
|
|
3845
|
+
|
|
3846
|
+
|
|
3847
|
+
|
|
3848
|
+
|
|
3849
|
+
|
|
3850
|
+
|
|
3851
|
+
|
|
3852
|
+
|
|
3034
3853
|
* @example
|
|
3035
3854
|
* // Reclaim memory
|
|
3036
3855
|
* const dq = new Deque<number>([1, 2, 3, 4, 5]);
|
|
@@ -3078,6 +3897,27 @@ var queueTyped = (() => {
|
|
|
3078
3897
|
|
|
3079
3898
|
|
|
3080
3899
|
|
|
3900
|
+
|
|
3901
|
+
|
|
3902
|
+
|
|
3903
|
+
|
|
3904
|
+
|
|
3905
|
+
|
|
3906
|
+
|
|
3907
|
+
|
|
3908
|
+
|
|
3909
|
+
|
|
3910
|
+
|
|
3911
|
+
|
|
3912
|
+
|
|
3913
|
+
|
|
3914
|
+
|
|
3915
|
+
|
|
3916
|
+
|
|
3917
|
+
|
|
3918
|
+
|
|
3919
|
+
|
|
3920
|
+
|
|
3081
3921
|
* @example
|
|
3082
3922
|
* // Create independent copy
|
|
3083
3923
|
* const dq = new Deque<number>([1, 2, 3]);
|
|
@@ -3108,6 +3948,27 @@ var queueTyped = (() => {
|
|
|
3108
3948
|
|
|
3109
3949
|
|
|
3110
3950
|
|
|
3951
|
+
|
|
3952
|
+
|
|
3953
|
+
|
|
3954
|
+
|
|
3955
|
+
|
|
3956
|
+
|
|
3957
|
+
|
|
3958
|
+
|
|
3959
|
+
|
|
3960
|
+
|
|
3961
|
+
|
|
3962
|
+
|
|
3963
|
+
|
|
3964
|
+
|
|
3965
|
+
|
|
3966
|
+
|
|
3967
|
+
|
|
3968
|
+
|
|
3969
|
+
|
|
3970
|
+
|
|
3971
|
+
|
|
3111
3972
|
* @example
|
|
3112
3973
|
* // Filter elements
|
|
3113
3974
|
* const dq = new Deque<number>([1, 2, 3, 4]);
|
|
@@ -3158,6 +4019,27 @@ var queueTyped = (() => {
|
|
|
3158
4019
|
|
|
3159
4020
|
|
|
3160
4021
|
|
|
4022
|
+
|
|
4023
|
+
|
|
4024
|
+
|
|
4025
|
+
|
|
4026
|
+
|
|
4027
|
+
|
|
4028
|
+
|
|
4029
|
+
|
|
4030
|
+
|
|
4031
|
+
|
|
4032
|
+
|
|
4033
|
+
|
|
4034
|
+
|
|
4035
|
+
|
|
4036
|
+
|
|
4037
|
+
|
|
4038
|
+
|
|
4039
|
+
|
|
4040
|
+
|
|
4041
|
+
|
|
4042
|
+
|
|
3161
4043
|
* @example
|
|
3162
4044
|
* // Transform elements
|
|
3163
4045
|
* const dq = new Deque<number>([1, 2, 3]);
|