Skip to content

Commit 15d3648

Browse files
committed
小傅哥 | 1. 两数之和
1 parent b3dfe49 commit 15d3648

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

LeetCode/Two Sum/code.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,37 @@ const logger = new LogTracer('两数之和');
77
Layout.setRoot(new VerticalLayout([tracerArray, tracerBit, logger]));
88

99
var twoSum = function (nums, target) {
10-
var volume = 32;
10+
var volume = 16;
1111
var bitMode = volume - 1;
12-
var t = new Array(32).fill(0);
13-
12+
var t = new Array(16).fill(0);
13+
// 设置bit数组
1414
tracerBit.set(t);
1515

1616
for (var i = 0; i < nums.length; i++) {
17+
tracerArray.select(i);
18+
Tracer.delay();
19+
1720
var c = (target - nums[i]) & bitMode;
1821
if (t[c] !== 0) return [t[c] - 1, i];
19-
t[nums[i] & bitMode] = i + 1;
22+
23+
var bitIdx = nums[i] & bitMode;
24+
var bitVal = i + 1;
25+
t[bitIdx] = bitVal;
26+
logger.println('数据存放-> bitIdx:' + bitIdx + ' bitVal:' + bitVal);
27+
28+
tracerArray.deselect(i);
29+
tracerBit.patch(bitIdx, bitVal);
2030
}
2131
return [-1, -1];
2232
};
2333

2434
(function main() {
25-
var nums = [2, 7, 11, 15];
35+
var nums = [3, 7, 1, 10, 4, 2];
2636
tracerArray.set(nums);
2737

2838
var idx = twoSum(nums, 9);
2939

30-
logger.println(idx);
40+
logger.println('两数之和(Idx):' + '[' + idx + ']');
3141

3242
})();
3343

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy