网站大量收购闲置独家精品文档,联系QQ:2885784924

datastruc当turebysunli.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
datastruc当turebysunli

* * * * Software Architecture * 优先队列 性质:队列通过insert和extract操作维护元素队列 其中extract返回队列中最小(最大)值 * Software Architecture * 优先队列(堆实现) Insert:n++,x(n)=t,siftup(x[1..n]) Extract: return x(1), x(1)=x(n),n--,siftup(x[1..n-1]) * Software Architecture * 排序: 利用优先队列: N次Insert: N次Extract for i=(2…n) siftup(i) for i=n i=2 i-- swap(1,i) siftdown(i-1) 对比快排优于时间复杂度(最坏情况) 劣于空间复杂度 但一般情况下快排仍要比堆排序快 快排为什么那么快:/pongba/archive/2008/06/13/2544933.aspx * Software Architecture * 程序中的堆: 要求对象只能分配在堆: Class UPNum{}; UPNun n; //error! UPNum *p=new UPNum ; //fine 析构函数声明为私有,建立伪构造函数 private: ~UPNum(); public: void destroy() const(delete this;) P-destroy(); * Software Architecture * 禁止对象分配在堆上 UPNum *p=new UPNum;//error 将new声明为私有 Class UPNum{ private: static void *operator new(size_t size); static void operator delete(void *ptr); }; 判断对象是否在分配堆上? 树 常见结构: 二叉树?二元查找树 ?平衡二叉树 Struct btree{ int m_value; btree* left; btree* right; } * * ISP * Software Architecture * 查询二叉树:BST 优势在于快速查找数据 基本操作:查询,插入,删除 时间复杂度logn * Software Architecture * 1.遍历顺序 在BST中查一个树:给出的序列不可能是检查的序列: 252 401 398 330 344 397 363 202 911 240 912 245 363 2 252 401 398 330 后面的值均小于后大于之前的值 * Software Architecture * 遍历顺序 输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。 4 7 5 12 10 ?? 10 ?????????????????????????????????????????? /?? \ ????????????????????????????????????????? 5???? 12 ? ????????????????????????????????????? / ? \??? ???????? ??????????????????????????? 4???? 7? * Software Architecture * 1.在后续遍历得到的序列中,最后一个元素为树的根结点。 Root=seq[n] 2.比根结点小的元素都应该位于序列的左半部分; seq[1…i] 3.从第一个大于跟结点开始到跟结点前面的一个元素为止,所有元素都应该大于跟结点seq[j…n-1] 根据这样的划分,把序列划分为左右两部分,我们递归地确认序

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档