博客列表 >一个返回数组最小数字的函数和选择排序

一个返回数组最小数字的函数和选择排序

南瓜又个梦
南瓜又个梦原创
2021年06月17日 16:59:30703浏览

返回最小数

  1. function minn(numbers){
  2. let i=0;
  3. let a=numbers;
  4. min=[];
  5. min[0]=a[0];
  6. for(i=0;i<a.length;i++){
  7. if(min[0]>a[i]){min[0]=a[i];}
  8. else{}}
  9. return console.log(numbers+'数组的最小值是'+min[0])
  10. }

第二种方法

  1. let min = (numbers) => {
  2. if(numbers.length > 2){
  3. return min(
  4. [numbers[0], min(numbers.slice(1))]
  5. )
  6. }else{
  7. return Math.min.apply(null, numbers)
  8. }
  9. }

从小到大排序

  1. function mins(numbers){
  2. let i=0;
  3. let a=numbers;
  4. min=[];
  5. min[0]=a[0];
  6. for(i=0;i<a.length;i++){
  7. if(min[0]>a[i]){min[0]=a[i];}
  8. else{}}
  9. return min[0]
  10. }
  11. function remove (numbers,val) {
  12. var index = indexOf(numbers,val);
  13. if (index > -1) {
  14. numbers.splice(index, 1);
  15. }
  16. return numbers;
  17. }
  18. function indexOf(numbers,val) {
  19. let numbers1=numbers;
  20. let val1=val;
  21. let i=0;
  22. for ( i = 0; i < numbers1.length; i++) {
  23. if (numbers1[i] == val1) return i;
  24. }
  25. return -1;
  26. };
  27. function sort(numbers){
  28. let a=numbers;
  29. let b=[];
  30. let c=[];
  31. let i=0;
  32. let d=numbers.length;
  33. for(i=0;d>i;i++){
  34. c[0]=mins(a);
  35. b.push(c[0]);
  36. indexOf(a,c[0]);
  37. a=remove(a,c);
  38. }
  39. return console.log(b)
  40. }

第二种方法

  1. let min = (numbers) => {
  2. if(numbers.length > 2){
  3. return min(
  4. [numbers[0], min(numbers.slice(1))]
  5. )
  6. }else{
  7. return Math.min.apply(null, numbers)
  8. }
  9. }
  10. let minIndex = (numbers) =>
  11. numbers.indexOf(min(numbers))
  12. let sort = (numbers) => {
  13. if(numbers.length > 2){
  14. let index = minIndex(numbers)
  15. let min = numbers[index]
  16. numbers.splice(index, 1)
  17. return [min].concat(sort(numbers))}else{
  18. return numbers[0]<numbers[1] ? numbers :
  19. numbers.reverse()
  20. }
  21. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议