免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7027 | 回复: 2
打印 上一主题 下一主题

[C] 啊!? “编程的核心是数据结构,而不是算法”《UNIX编程哲学》里竟然有这句话啊! [复制链接]

论坛徽章:
1
双子座
日期:2013-11-14 17:43:24
1 [报告]
发表于 2013-01-18 10:59 |显示全部楼层
正确的数据结构是正确算法的前提条件。

举个极端点的例子:

你用二叉树的数据结构把10个随机数存储起来,然后你用冒泡排序算法来对这10个数进行排序。

这种情况下,你很难正确实现冒泡排序算法。

论坛徽章:
1
双子座
日期:2013-11-14 17:43:24
2 [报告]
发表于 2013-01-18 11:17 |显示全部楼层
本帖最后由 star_in_sky 于 2013-01-18 11:25 编辑

回复 9# pmerofc


    呵呵,在链表(尽管链表已经排过序了)中使用二分法,确实比较雷人(不过不排除实际情况中,这也是一个无奈的选择吧),虽然不能算错误,但至少是不好的。

   不管怎么样,这个例子也是一个鲜活的“反面典型”,相信LZ看了这个例子之后,就会更加明白:正确的数据结构是正确的算法的前提。

   其实,反面例子的说服力更强

论坛徽章:
1
双子座
日期:2013-11-14 17:43:24
3 [报告]
发表于 2013-01-18 11:38 |显示全部楼层
回复 13# shan_ghost


    呵呵,不能通过数组ID直接定位元素。

   “错误”更加准确
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP