首页 > 代码库 > 算法中交换两个数据
算法中交换两个数据
这两天搞服务器有点呆呆的。(⊙o⊙)(⊙o⊙)
在这里用冒泡排序demo 来说明。
第一种 最low的一种 借助中间变量 line 5 6 7
1 function bubble(arr) { 2 for (var i = 0, length = arr.length; i < length; i++) { 3 for (var j = 0; j < length -1 -i; j++) { 4 if (arr[j] > arr[j+1]) { 5 var temp = arr[j]; 6 arr[j] = arr[j+1]; 7 arr[j+1] = temp; 8 } 9 }10 }11 return arr;12 }
第二种 不借助中间变量 line 5 6 7
1 function bubble(arr) { 2 for (var i = 0, length = arr.length; i < length; i++) { 3 for (var j = 0; j < length -1 -i; j++) { 4 if (arr[j] > arr[j+1]) { 5 arr[j] = arr[j] + arr[j+1]; 6 arr[j+1] = arr[j] - arr[j+1]; 7 arr[j] = arr[j] - arr[j+1]; 8 } 9 }10 }11 return arr;12 }
第三种 借助数组 推荐 line 5
1 function bubble(arr) { 2 for (var i = 0, length = arr.length; i < length; i++) { 3 for (var j = 0; j < length -1 -i; j++) { 4 if (arr[j] > arr[j+1]) { 5 arr[j] = [arr[j+1], arr[j+1] = arr[j]][0]; 6 } 7 } 8 } 9 return arr;10 }
知识要一点点积累总结,向大牛膜拜的同时,也要走路哦。掌握好基础,多思考,多总结。
亲爱的你 中秋快乐!
算法中交换两个数据
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。