1, find a set of maximum and minimum number, and location (maximum and minimum position in the set of numbers)
. 1 var Numbers = [120, 13 is, 101, 88, 10, 25 ];
2 var max = Numbers [0 ];
. 3 var min = Numbers [0 ];
. 4 // maximum index
. 5 var maxIndex = 0 ;
. 6 // minimum index
. 7 var minIndex = 0 ;
. 8
. 9 for ( var I =. 1; I <numbers.length; I ++ ) {
10 // find a large number
. 11 IF (max < numbers [I]) {
12 is max = Numbers [I];
13 is maxIndex = i;
14 }
15 // 找小的数
16 if (min > numbers[i]) {
17 min = numbers[i];
18 minIndex = i;
19 }
20 }
21 console.log(max, min);
22 console.log(maxIndex, minIndex);
2, the string array with | or other code division
. 1 var names = [ 'Siberian wolf', 'wolf', 'coyote', 'Taiweibalang', 'a head Lao Gao' ];
2 // to add before the second separator element
. 3 var Seperator = ' | '; // separator
. 4 var STR = names [0 ];
. 5 for ( var I =. 1; I <of names.length; I ++ ) {
. 6 STR + + = Seperator names [I];
. 7 }
. 8 the console.log (str);
3, flip the array 1,2,3,4 -> 4,3,2,1
. 1 var Numbers = [. 4,. 5,. 7,. 9]; // creates a new array stored in the array. 7. 5. 4. 9
2 var newArray = [];
. 3 for ( var I = numbers.length -. 1; I> = 0; i-- ) {
. 4 newArray [newArray.length] = Numbers [I];
. 5 }
. 6 the console.log (newArray);
4, bubble sort
1 // 冒泡排序 -- 从小到大的排序
2 var numbers = [1, 3, 5, 2, 4];
3 var count = 0; // 记录循环的次数
4 // 外层循环:控制趟数,每一趟找到一个最大值
5 for (var i = 0; i < numbers.length - 1; i++) {
6 count++;
7 // 内层循环:控制比较的次数,并且判断两个数的大小,把大的数往后移动,小的数往前移动
8 for (var j = 0; j < numbers.length - 1 - i; j++) {
9 count++;
10 // 两两比较 从小到大排序
11 if (numbers[j] > numbers[j + 1]) {
12 // 交换位置
13 var tmp = numbers[j];
14 numbers[j] = numbers[j + 1];
15 numbers[j + 1] = tmp;
16 }
17 }
18 }
19 console.log(numbers);
20 console.log(count);
5、冒泡排序——优化
1 var numbers = [1, 3, 5, 2, 4];
2 var count = 0; // 记录循环的次数
3 // 外层循环:控制趟数,每一趟找到一个最大值
4 for (var i = 0; i < numbers.length - 1; i++) {
5 // 假设数据排好顺序了
6 var isSort = true;
7 count++;
8 // 内层循环:控制比较的次数,并且判断两个数的大小,把大的数往后移动,小的数往前移动
9 for (var j = 0; j < numbers.length - 1 - i; j++) {
10 count++;
11 // 两两比较 从小到大排序
12 if (numbers[j] > numbers[j + 1]) {
13 // 没有排好
14 isSort = false;
15 // 交换位置
16 var tmp = numbers[j];
17 numbers[j] = numbers[j + 1];
18 numbers[j + 1] = tmp;
19 }
20 }
21 // 某一趟结束,判断一下排序是否结束
22 // 如何判断排序是否排好,根据是否发生了数据交换,如果发生了数据交换说明没有排好
23 if (isSort) {
24 // 如果排好顺序
25 break;
26 }
27 }
28 console.log(numbers);
29 console.log(count);