- 60
- 0
- 约8.32千字
- 约 41页
- 2017-05-27 发布于河南
- 举报
范浩强谈数据结构
最后开始说数据结构。
嗯,要开始说数据结构了!
● 啥叫数据结构呢?
● 下定义是一个痛苦的事情。
●
● 我们生活在数据结构的世界里。
● 随机存取线性表(数组,vector )
● 优先队列(priority_queue )
● 有序集合(各种平衡树,set )
● 映射(map ,hashmap )
矛盾。
● 信息学中充满了矛盾。
● 语言:C++——Pascal
● 算法:Dijkstra——BellmanFord
● Dinic——SAP
● 数据结构:Treap——Splay
● 自顶向下线段树——自底向上线段树
● 甲:我写的比你短!乙:我写的比你更短!甲:我
写的比你还短!乙:我常数小!甲:我常数更小…
…我们已经厌烦这种争吵了。
数据结构啊。
● 有没有新鲜玩意呢?。
你听说过函数式编程吗?。
● Haskell 、 Erlang……
●
● 函数式编程的思想:
● 所谓程序,是把输入映射成输出的函数。
● 所谓函数,就是定义域+ 对应法则。
● 一个函数可以由其他函数拼起来。
举个例子。
● 如何实现:读入若干行,输出长度不超过10 的
行?
●
● main = interact $ unlines . filter ((10) .
length) . lines
举个容易懂的例子。。。
● fac 0=1
● fac x=x*fac (x-1)
● 嗯,这就是阶乘的写法。
● 如果用命令式呢?
● s=1
● for i in range(1,n+1):
● s*=i
● 你注意到一个区别没有?
● 函数式编程从不修改任何东西。它只做一件事:定义。
从不“修改”任何东西?。
● 从不“修改”东西?你不修改任何修改任何东西能
写出一个快排出来吗?
● quicksort [] = []
● quicksort (x:xs) =quicksort (filter xs (x))
++ [x] ++ quicksort (filter xs (=x))
● 神奇吧?
数据结构呢?
● 你能不“修改”任何东西写出一个线段树出来吗?
● 当然可以啦。
● 介于你对Haskell 的语法了解比较少。。。我
就写伪代码吧。
● 支持:修改一个元素,查询一段和。
“ 伪”代码。
● buildtree(l,r)= 递归构建一个从l 到r 的树。
● ask(a,b,e)= 递归地询问a 节点对应的子树中从
b 到e 的和
● change(a,b,y)= 返回一棵新的树的根,表示a
节点对应的子树把位置b 修改成y 之后形成的
树。
● 慢点,慢点:你怎么能每次返回一棵新的树!
(空间+ 时间会爆的!)
“ 伪”代码。
● buildtree(l,r)= 递归构建一个从l 到r 的树。
● ask(a,b,e)= 递归地询问a 节点
您可能关注的文档
- 声声慢llh.ppt
- 幼儿园小班语言教案:鞋子秋千.docx
- 微视频《反问句与陈述句的互换》设计方案.doc
- 桃园小学四年级数学下第五单元试卷1.doc
- 教学设计模板(幼儿园).docx
- 望海潮llh.doc
- 李梅翼表二:双师教学小学数学课堂实践教学反思.doc
- 张小莹棉花姑娘课件.ppt
- 桃园小学四年级数学下第四单元试卷2.doc
- 桃园小学四年级数学下第四单元试卷3.doc
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
最近下载
- 商务型(带电梯、地下室、效果图)三层别墅设计图.pdf VIP
- 2026年详版个人信用报告征信报告最新Word可编辑模版样板doc文件.docx
- 2026年春接力版(新教材)小学音乐一年级下册(全册)教学设计(附目录P160).docx
- 行者讲课脉法下篇.doc VIP
- 铁塔电池通讯协议.docx VIP
- 复旦大学课程汉语言文学原典精读李杜精读.pdf VIP
- 电商数据分析(微课版)课件全套 第1--10章 电商数据分析概述---数据分析报告与看板制作.pptx
- 异常子宫出血的护理查房.pptx
- 2025年中医执业医师个人工作计划范文.docx VIP
- 2024《中班幼儿饮食行为现状调查—以S幼儿园为例》12000字.docx VIP
原创力文档

文档评论(0)