当前位置: 首页 > news >正文

临沧市网站建设百度做网站联系电话

临沧市网站建设,百度做网站联系电话,网页的制作与建设,asp网站建设实录最近面试好多公司考察算法#xff0c;特意整理了一下#xff1a; 1. 冒泡排序思路分析#xff1a;在要排序的一组数中#xff0c;对当前还未排好的序列#xff0c;从前往后对相邻的两个数依次进行比较和调整#xff0c;让较大的数往下沉#xff0c;较小的往上冒。即特意整理了一下 1. 冒泡排序 思路分析在要排序的一组数中对当前还未排好的序列从前往后对相邻的两个数依次进行比较和调整让较大的数往下沉较小的往上冒。即每当两相邻的数比较后发现它们的排序与排序要求相反时就将它们互换。 代码实现 $arrarray(1,43,54,62,21,66,32,78,36,76,39);   function bubbleSort($arr) {   $lencount($arr); //该层循环控制 需要冒泡的轮数 for($i1;$i$len;$i) { //该层循环用来控制每轮 冒出一个数 需要比较的次数 for($k0;$k$len-$i;$k) { if($arr[$k]$arr[$k1]) { $tmp$arr[$k1]; $arr[$k1]$arr[$k]; $arr[$k]$tmp; } } } return $arr; } 2. 选择排序  思路分析在要排序的一组数中选出最小的一个数与第一个位置的数交换。然后在剩下的数当中再找最小的与第二个位置的数交换如此循环到倒数第二个数和最后一个数比较为止。 代码实现 function selectSort($arr) { //双重循环完成外层控制轮数内层控制比较次数 $lencount($arr); for($i0; $i$len-1; $i) { //先假设最小的值的位置 $p  $i; for($j$i1; $j$len; $j) { //$arr[$p] 是当前已知的最小值 if($arr[$p]  $arr[$j]) { //比较发现更小的,记录下最小值的位置并且在下次比较时采用已知的最小值进行比较。 $p  $j; } } //已经确定了当前的最小值的位置保存到$p中。如果发现最小值的位置与当前假设的位置$i不同则位置互换即可。 if($p ! $i) { $tmp  $arr[$p]; $arr[$p]  $arr[$i]; $arr[$i]  $tmp; } } //返回最终结果 return $arr; } 3.插入排序 思路分析在要排序的一组数中假设前面的数已经是排好顺序的现在要把第n个数插到前面的有序数中使得这n个数也是排好顺序的。如此反复循环直到全部排好顺序。 代码实现 function insertSort($arr) { $lencount($arr);  for($i1, $i$len; $i) { $tmp  $arr[$i]; //内层循环控制比较并插入 for($j$i-1;$j0;$j--) { if($tmp  $arr[$j]) { //发现插入的元素要小交换位置将后边的元素与前面的元素互换 $arr[$j1]  $arr[$j]; $arr[$j]  $tmp; } else { //如果碰到不需要移动的元素由于是已经排序好是数组则前面的就不需要再次比较了。 break; } } } return $arr; } 4.快速排序   思路分析选择一个基准元素通常选择第一个元素或者最后一个元素。通过一趟扫描将待排序列分成两部分一部分比基准元素小一部分大于等于基准元素。此时基准元素在其排好序后的正确位置然后再用同样的方法递归地排序划分的两部分。 代码实现 function quickSort($arr) { //先判断是否需要继续进行 $length  count($arr); if($length  1) { return $arr; } //选择第一个元素作为基准 $base_num  $arr[0]; //遍历除了标尺外的所有元素按照大小关系放入两个数组内 //初始化两个数组 $left_array  array();  //小于基准的 $right_array  array();  //大于基准的 for($i1; $i$length; $i) { if($base_num  $arr[$i]) { //放入左边数组 $left_array[]  $arr[$i]; } else { //放入右边 $right_array[]  $arr[$i]; } } //再分别对左边和右边的数组进行相同的排序处理方式递归调用这个函数 $left_array  quick_sort($left_array); $right_array  quick_sort($right_array); //合并 return array_merge($left_array, array($base_num), $right_array); } 转载于:https://www.cnblogs.com/fukai-blog/p/7727898.html
http://www.pierceye.com/news/346262/

相关文章:

  • 做网站如何让盈利wordpress链接样式表
  • 网站建设与管理计划谷歌浏览器官网下载手机版
  • 做请帖的网站上海阳性增多
  • 有回定ip怎么做网站青岛建设集团招聘信息网站
  • 淘宝内部卷网站怎么做智慧团建网站登录忘记密码
  • 网站建设前十名建站系统cms
  • 第三方网站开发的商家厦门广告公司网站建设
  • 网站建设基础条件临猗网站制作
  • 建设博客网站步骤常州网站建设百科
  • 门户网站 管理系统wordpress 微信图标
  • 广元网站建设广元莱芜论坛二手车
  • 山东省建设工程质量监督网站广州软件合作中心
  • 郑州网站建设怎么样通州建设局网站
  • 免费网站建设福州怎么修改网站主页
  • 深圳企业建站设计公司wordpress不显示样式
  • 外贸网站商城广东省建设协会网站
  • 杭州制作企业公司网站wordpress数据库添加用户
  • 主域名进入网站广告标识标牌制作厂家
  • 网站建设基础流程摘要专题网站建设策划
  • 滁州网站建设电话网站建设与网站优化
  • 慈溪做网站公司哪家好淘宝商城的网站建设
  • 安徽建设厅网站怎么打不开太原网络搭建
  • idea 网站开发最好的免费推广平台
  • 专业排名优化网站怎么建网站教程视频app
  • 全国八大员报名官方网站支付宝小程序开发工具
  • 怎么查看vps网站服务器时间中国建设会计协会网站
  • 门户网站上的广告怎么做深圳服装网站建设
  • 公司网站上线的通知抚州营销型网站建设
  • 中国住房城乡和城乡建设部网站小广告文案
  • 做带字头像的网站wordpress 翻页设置