File tree 1 file changed +45
-0
lines changed
1 file changed +45
-0
lines changed Original file line number Diff line number Diff line change
1
+ '''
2
+ for_vs_in : shows the differences of complexity to solve a single problem by 4 different ways
3
+ better to use 'in' than to make a test on for iteration
4
+ '''
5
+ import random
6
+ import time
7
+
8
+ n = 1000
9
+ list_1 = [random .randint (0 ,1000 ) for _ in range (n ) ]
10
+ list_2 = [random .randint (0 ,1000 ) for _ in range (n ) ]
11
+ set_1 = set (list_1 )
12
+ set_2 = set (list_2 )
13
+
14
+ start = time .time ()
15
+ nb = 0
16
+ for i in list_1 :
17
+ for j in list_2 :
18
+ if i + j == 1000 :
19
+ nb += 1
20
+ print ( time .time ()- start , nb )
21
+
22
+ start = time .time ()
23
+ nb = 0
24
+ for i in list_1 :
25
+ j = 1000 - i
26
+ if j in list_2 :
27
+ nb += 1
28
+ print ( time .time ()- start , nb )
29
+
30
+ start = time .time ()
31
+ nb = 0
32
+ for i in set_1 :
33
+ for j in set_2 :
34
+ if i + j == 1000 :
35
+ nb += 1
36
+ print ( time .time ()- start , nb )
37
+
38
+ start = time .time ()
39
+ nb = 0
40
+ for i in set_1 :
41
+ j = 1000 - i
42
+ if j in set_2 :
43
+ nb += 1
44
+ print ( time .time ()- start , nb )
45
+
You can’t perform that action at this time.
0 commit comments