PHP冒泡排序,只对比了第一个数字.

dasdfwe 2016-10-31 09:32:14







PHP的冒泡排序,根据ID从大到小排,只对比了第一个数字,然后就输出了,为啥.
...全文
258 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dasdfwe 2016-10-31
  • 打赏
  • 举报
回复
好了好了,我数据库里的ID 是varchar类型的,我改成int就好了
dasdfwe 2016-10-31
  • 打赏
  • 举报
回复
引用 6 楼 xuzuning 的回复:
不管你是几维数组,排序只对第一维进行 要测试记得代码有什么问题,你应给出待排序数据 你的数据是从数据库了得到的,本该在数据库读取时就完成排序的
那PHP有没有从数据库中查询的数据根据ID排序之类的
xuzuning 2016-10-31
  • 打赏
  • 举报
回复
不管你是几维数组,排序只对第一维进行 要测试记得代码有什么问题,你应给出待排序数据 你的数据是从数据库了得到的,本该在数据库读取时就完成排序的
dasdfwe 2016-10-31
  • 打赏
  • 举报
回复
引用 4 楼 xuzuning 的回复:
标准的 冒泡
for($i=0; $i<count($a)-1; $i++) {
  for($j=$i+1; $j<count($a); $j++) {
     if($a[$i] > $a[$j]) {
        $t = $a[$i];
        $a[$i] = $a[$j];
        $a[$j] = $t;
    }
  }
}
你倒过来写,也无不可。只要你自己不要把你自己弄糊涂了就好
我这是二维数组啊,, 这个也不好使啊..,还是只对比了第一个数字.
xuzuning 2016-10-31
  • 打赏
  • 举报
回复
标准的 冒泡
for($i=0; $i<count($a)-1; $i++) {
  for($j=$i+1; $j<count($a); $j++) {
     if($a[$i] > $a[$j]) {
        $t = $a[$i];
        $a[$i] = $a[$j];
        $a[$j] = $t;
    }
  }
}
你倒过来写,也无不可。只要你自己不要把你自己弄糊涂了就好
dasdfwe 2016-10-31
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
你只是对 k 和 k+1 进行了比较,而冒泡是 i 和 k 进行比较
用i 和K 对比不行,
dasdfwe 2016-10-31
  • 打赏
  • 举报
回复
引用 1 楼 xuzuning 的回复:
你只是对 k 和 k+1 进行了比较,而冒泡是 i 和 k 进行比较
我看网上的都是 K 和K+1 之类的啊. 我先试试 i 和K
xuzuning 2016-10-31
  • 打赏
  • 举报
回复
你只是对 k 和 k+1 进行了比较,而冒泡是 i 和 k 进行比较

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧