1、(数字の集合内の最大及び最小位置)最大および最小数、及び位置のセットを見つけます
1つの VARの数= [120、13、25、10、101、88である];
2 VARの最大=番号[0 ];
3 VARの分=番号[0 ];
4 // 最大インデックス
5。 のvar = 0 maxIndex ;
6 // 最小インデックス
7。 VAR minIndex = 0 ;
8
9。 ため(VARの I = 1; Iはnumbers.lengthを<; Iは++ ){
10 // 多数を見つける
11。 IF(MAX < 番号[I]){
12は 、最大= 番号[I]、
13であります maxIndex = I;
14 }
15 // 找小的数
16 であれば(MIN> 番号[I]){
17 分= 番号[I];
18 minIndex = I。
19 }
20 }
21 にconsole.log(MAX、MIN)。
22 にconsole.log(maxIndex、minIndex)。
2、と文字列配列|または他の符号分割
1 VARの名= [ 'シベリアオオカミ'、 'オオカミ'、 'コヨーテ'、 'Taiweibalang'、 '頭ラオスガオ' ];
2 // 第2セパレータ要素の前に追加する
。3 VARのセパレーター= ' |「; // セパレータ
4 のvar STR =名は[0 ];
5 用(VAR Iを= 1; I <names.lengthの、私は++ ){
6。 STR + + =セパレーターと;名[I]
7。 }
8 にconsole.log (STR)。
3、配列1,2,3,4-フリップ - > 4,3,2,1
1つの VARの数= [4 ,. 5 ,. 7 ,. 9]; //は、配列に格納された新しい配列を作成7. 5. 4. 9。
2 VAR NEWARRAY = [];
3 用(VAR。I = numbers.length - 1; I> = 0; i-- ){
4。 NEWARRAY [newArray.length] = 番号[I];
5 }
。6 にconsole.log(NEWARRAY)。
4、バブルソート
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);