@@ -25,41 +25,47 @@ function ArrayList(){
25
25
26
26
for ( var i = 0 ; i < length ; i ++ ) {
27
27
for ( var j = 0 ; j < length - 1 ; j ++ ) {
28
+ console . log ( 'compare ' + array [ j ] + ' with ' + array [ j + 1 ] ) ;
28
29
if ( array [ j ] > array [ j + 1 ] ) {
30
+ console . log ( 'swap ' + array [ j ] + ' with ' + array [ j + 1 ] ) ;
29
31
swap ( j , j + 1 ) ;
30
32
}
31
33
}
32
34
}
33
35
} ;
34
36
35
37
this . modifiedBubbleSort = function ( ) {
36
- var length = array . length ,
37
- swapped ;
38
-
39
- do {
40
- swapped = false ;
41
- for ( var i = 0 ; i < length - 1 ; i ++ ) {
42
- if ( array [ i ] > array [ i + 1 ] ) {
43
- swap ( i , i + 1 ) ;
44
- swapped = true ;
38
+ var length = array . length ;
39
+
40
+ for ( var i = 0 ; i < length ; i ++ ) {
41
+ for ( var j = 0 ; j < length - 1 - i ; j ++ ) {
42
+ console . log ( 'compare ' + array [ j ] + ' with ' + array [ j + 1 ] ) ;
43
+ if ( array [ j ] > array [ j + 1 ] ) {
44
+ console . log ( 'swap ' + array [ j ] + ' with ' + array [ j + 1 ] ) ;
45
+ swap ( j , j + 1 ) ;
45
46
}
46
47
}
47
- } while ( swapped ) ;
48
+ }
48
49
49
50
} ;
50
51
51
52
this . selectionSort = function ( ) {
52
53
var length = array . length ,
53
54
indexMin ;
54
55
55
- for ( var i = 0 ; i < length ; i ++ ) {
56
+ for ( var i = 0 ; i < length - 1 ; i ++ ) {
56
57
indexMin = i ;
58
+ console . log ( 'index ' + array [ i ] ) ;
57
59
for ( var j = i ; j < length ; j ++ ) {
58
60
if ( array [ indexMin ] > array [ j ] ) {
61
+ console . log ( 'new index min ' + array [ j ] ) ;
59
62
indexMin = j ;
60
63
}
61
64
}
62
- swap ( i , indexMin ) ;
65
+ if ( i !== indexMin ) {
66
+ console . log ( 'swap ' + array [ i ] + ' with ' + array [ indexMin ] ) ;
67
+ swap ( i , indexMin ) ;
68
+ }
63
69
}
64
70
} ;
65
71
@@ -69,10 +75,13 @@ function ArrayList(){
69
75
for ( var i = 1 ; i < length ; i ++ ) {
70
76
j = i ;
71
77
temp = array [ i ] ;
78
+ console . log ( 'to be inserted ' + temp ) ;
72
79
while ( j > 0 && array [ j - 1 ] > temp ) {
80
+ console . log ( 'shift ' + array [ j - 1 ] ) ;
73
81
array [ j ] = array [ j - 1 ] ;
74
82
j -- ;
75
83
}
84
+ console . log ( 'insert ' + temp ) ;
76
85
array [ j ] = temp ;
77
86
}
78
87
} ;
@@ -86,6 +95,7 @@ function ArrayList(){
86
95
var length = array . length ;
87
96
88
97
if ( length === 1 ) {
98
+ console . log ( array ) ;
89
99
return array ;
90
100
}
91
101
@@ -118,6 +128,8 @@ function ArrayList(){
118
128
result . push ( right [ ir ++ ] ) ;
119
129
}
120
130
131
+ console . log ( result ) ;
132
+
121
133
return result ;
122
134
} ;
123
135
@@ -131,16 +143,21 @@ function ArrayList(){
131
143
i = left ,
132
144
j = right ;
133
145
146
+ console . log ( 'pivot is ' + pivot + '; left is ' + left + '; right is ' + right ) ;
147
+
134
148
while ( i <= j ) {
135
149
while ( array [ i ] < pivot ) {
136
150
i ++ ;
151
+ console . log ( 'i = ' + i ) ;
137
152
}
138
153
139
154
while ( array [ j ] > pivot ) {
140
155
j -- ;
156
+ console . log ( 'j = ' + j ) ;
141
157
}
142
158
143
159
if ( i <= j ) {
160
+ console . log ( 'swap ' + array [ i ] + ' with ' + array [ j ] ) ;
144
161
swapQuickStort ( array , i , j ) ;
145
162
i ++ ;
146
163
j -- ;
0 commit comments