Java编程

学堂在线邓俊辉数据结构答案

分查找“版本C”摘录如下:当数组A中有多个待查找元素e时,函数的返回值为:返回秩最大者解析:注意程序中的“ ? : ”表达式,根据它可以证明本程序有如下循环不变量:任意时刻A[hi, n-1]中元素均>e。而循环结束时有lo==hi,所以返回的元素的直接后继>e,故返回的是秩最大者。也可以直观的理解为由于lo = mi + 1,当有多个元素e时程序总是倾向于命中右边的。

学堂在线邓俊辉数据结构答案

mooc 上浙大的《数据结构》学堂在线上清华邓俊辉老师的《数据结构与算法》这两个是我看过觉得不错的才在这推荐,第一个是初学数据结构时跟着看,第二个是大三复习时刷的。

理论课程:由清华大学邓俊辉教授、马昱春副教授和星副教授开设理论课程,课程方向包含算法与数据结构、数学思维、程序设计,每次授课后需完成相应课程作业。(导师简介如下表)。

基于分治的思想,是冒泡排序的改进型。首先在数组中选择一个基准点(该基准点的选取可能影响快速排序的效率,后面讲解选取的方法),然后分别从数组的两端扫描数组,设两个指示标志(lo指向起始位置,hi指向末尾),首先从后半部分开始,如果发现有元素比该基准点的值小,就交换lo和hi位置的值,然后从前半部分开始扫秒,发现有元素大于基准点的值,就交换lo和hi位置的值,如此往复循环,直到lo>=hi,然后把基准点的值放到hi这个位置。一次排序就完成了。以后采用递归的方式分别对前半部分和后半部分排序,当前半部分和后半部分均有序时该数组就自然有序了。

理论课程:由清华大学邓俊辉教授、马昱春副教授和徐明星副教授开设理论课程,课程方向包含算法与数据结构、数学思维、程序设计,每次授课后需完成相应课程作业。(导师简介如下表)。

本书从算法的一般性讨论出发,回顾了计算机抽象问题的方法以及归纳算法的一般过程,提出了好的算法的评判标准。随后,将常见的数据结构拆分为向量、列表、栈与队列、二叉树、图、搜索树、词典、优先级队列和字符串一一讲解,最后一章针对排序额外讨论了一些经典算法。全书各章节以问题引入开篇,在逐步介绍问题背景和提出具体问题的过程中,给出数据结构的 ADT 定义,穿插着各种算法的讲解和分析。本书的一大特点是讲解非常的流畅,仿佛邓俊辉教授面对面地讲授他多年以来在数据结构与算法这个领域的思考。另外,在清华美院的同学的帮助下,全书排版非常美观,演示数据结构与算法的图片赏心悦目,一看就懂。本书精巧的编排和严谨但不失流畅的用词,以及时不时碰撞出的思维火花,真的是给计算机科学的学生在接触数据结构与算法的时候感受到其中的乐趣的契机。通过这本书及其配套资料的学习,我相信你能够感受到邓俊辉教授对数据结构与算法的热爱与倾注的心血。

Similar Posts

发表评论

邮箱地址不会被公开。 必填项已用*标注