算法导论什么语言
① 算法导论/计算机科学丛书用的是什么语言
一般是c语言
② 算法导论 是针对c++ 还是java
都不是. 算法导论用的是伪代码, 每种算法用任意语言都可以实现. 学算法就不要纠结语言了
③ 学习算法导论需要什么数学基础或者其他的基础吗
算法导论的数学基础要求不是很高 确切的说老外的书 对于数学的要求都不是很高 但 人家要的是研究的态度 线代 高数 还有一点点的离散数学基础就可以了
④ c语言算法经典入门书籍推荐!!!!!!!!!!!1最好是国外的书!
《算法导论》原书名——《Introction to Algorithms》,是一本十分经典的计算机算法书籍,与高德纳(Donald E.Knuth)的《计算机程序设计艺术》(《The Art Of Computer Programming》)相媲美。 《算法导论》由Thomas H.Cormen、Charles E.Leiserson、Ronald L.Rivest、Clifford Stein四人合作编着(其中Clifford Stein是第二版开始参与的合着者)。本书的最大特点就是将严谨性和全面性融入在了一起。
http://ke..com/link?url=-
大学教的数据结构和算法基本上面都有,我就作为参考书
⑤ 算法导论是讲c的算法还是整个算法。适合什么时候看。我现在入门c语言。以后该怎么个学习法。
讲的当然是算法的经典理论知识和方法,这些理论和方法用在其他编程语言仍然是通用的。当然书中可能会用c语言写的代码作为例子来讲解。
学习一门编程语言和学习算法是密不可分的,系统的算法知识有助于编程语言的灵活运用,而一定的编程语言基础又有助于更好地理解算法的精髓。
如果你在学习C语言之前,有一定的编程基础,那么建议现在就开始学习算法导论,这样有助于你C语言的学习。
如果你无任何编程基础,还是建议先从学习C语言开始,等有了一定的编程基础之后再去学习算法导论,才能让你的编程能力更上一层楼。
⑥ 数据结构用什么语言
问题一:数据结构和语言是什么关系? 数据结构其本身是和语常无关的,也就是说数据结构只有一个版本,至于应该选择哪一个语言进行学习,可以就个人爱好与善长决定。C,C++,Java都是不 错的选择。数据结构和语言的关系就像数学定理和描述它的自然语言一样,你首液可以用中文表达勾股定理,也可以用英文,法文或者世界上任何一种语言表达它,但是 世上只有一个勾股定理。当然,如果任何一种语言你都不会,那将无法学好数据结构的。如果你打算今后都用C语言,那么可以认为数据结构是C语言的加强和发 展。
问题二:学习数据结构都使用什么语言 自己熟悉什么编程语言
就找一本相应编程语言的数据结构书记进行学习
这样更容易学一些
问题三:数据结构 各编程语言是通用的吗? 数据结构是一种工具,重要的是它的思想。具体的实现倒是没什么的,JAVA和C无非是长的不太一样(只谈语言代码)。算法和数据结构都是一样的东西,《算法导论》上的都是伪代码,用的类C和类PA丁CAL。学JAVA或.NET的照样可以看。
所以LZ用这个还是可以的,但如果看不懂C语言或者代码实现能力有问题……那就没办法了……还是去搞本能看懂的书吧
建议LZ多用一些比较经典的书。现在书抄书太严重=。=
问题四:学习数据结构用什么语言最好? 呵,肯定是C语言啦。
问题五:大家数据结构算法用什么语言写? 写数据结构课程设计,除了第一个长整数加减乘除用的C语言,后面几个课程设计都用C++了,觉得数据结构就应该用C++,面向对象
问题六:C语言中所谓的数据结构是什么啊? 所谓结构就是组织形式,数据的结构就是数据怎么组织,即怎么描述,怎么在电脑中存储。不同类型的数据,它们的组织形式(数据结构)是不同的,如我们把一个班的学生按照学号排队,可以用“数组”来描述它,而如果要描矗一个家族的系谱,从祖先到子子孙孙,开支散叶,则可以用“树”来描述,因为这样的数据组织起来像一颗树。数组和树,在进行插入数据,删除数据等操作时,它们的操作方式是不一样的。如果想编程序,那么必须要了解一些数据结构方面的知识。因为你首先要知道怎么描述数据。
问题七:c语言学到哪个程度可以看数据结构? 学会C的基础 并且能够熟练运用C来完成一些基础的小程序 重弗要会指针(这个好重要) 数据结构一堆东西都要用到指针 链表 堆栈 树 图 七七八八的 这样一般就可以开始看了 数据结构里看不懂的再回去翻翻C 两边都能得到提升
问题八:openflow数据结构是什么语言 事实上,OpenFlow交换机在Interop Las Vegas 2011上就已经公诸于众了,并且也引起了很大的争论。
SDN允许网络工程师控制和管理他们的网络,以便最好地服务他们各自需求,从而增加网络功能和降低运营网络的成本。Open Networking Foundation支持OpenFlow规范,这将最终实现定义软件的网络。
OpenFlow是一套软件API,它允许一个控制器将配置信息发送给交换机。这个配置往往指的是一个流及其附属的某些操作。
流是一组定义的帧或者数据包(类似于一个MPLS流)与一组操作。例如:
Source IP/Port、Destination IP/Port和Drop。
Source IP、Destination IP和QoS Action。
Source MAC、Destination MAC和L2 Path。
通过OpenFlow,您可以将一组规则发送给一台配置设备的交换机或者路由器。然后每个设备会根据它的类型使用这些数据。交换机会更新它的MAC地址表以转发帧,禅芹旅路由器会添加访问列贺凳表,而防火墙会更新它的规则。
当组织将网络配置从设备迁移到软件平台时,交换机就变得更加简单和廉价了。但是主要的受益是网络配置可以由中央控制器管理。
控制者是一个包含算法、数学、分析和规则的软件,它来自规则组,并使用OpenFlow将配置下载到网络设备中。因此,当控制器评估和重新平衡配置时,网络就可能动态地进行重新配置。这就是所谓的软件定义网络。
HP Networking: HP已经在OpenFlow上投入了大量的资源。我见过HP向委员会提交的一个QoS功能的演示,并且公司也为控制器平台制定了全面的软件计划。
NEC: 您可能还未听说过NEC也是一个网络供应商,但是这家公司有完整的产品系列,并且已经在NEC美国市场开始销售了。NEC已经为OpenFlow做出了几个重大的贡献,而且它有一个支持OpenFlow的完整系列交换机。在Interop上,NEC演示了它的OpenFlow控制器。
Cisco: 虽然网络巨头是Open Networking Foundation的成员之一,但是我还未能找到它关于OpenFlow的计划。很可能Cisco会觉得OpenFlow破坏了作为营利产品的IOS软件。OpenFlow最突出的优点是减少硬件交换机的成本,而本身不会给网络供应商的销售带来任何的提升。
Avaya: 虽然公司在Shortest Path Bridging策略方面下了很大的功夫,但是据我了解,公司目前并没有任何关于OpenFlow的计划。
Arista: 网络新贵并没有任何关于OpenFlow的发布计划,同时它还指出在一台设备上管理所有流是不可能的。虽然Cisco也这样认为,但是我认为这是对OpenFlow工作方式的一种误解。使用OpenFlow来处理每一个流是可能的,但这并不是必要的,这只是一个配置选项。
Big Switch Networks: 这个最近成立的新兴公司关注于OpenFlow解决方案,特别是网络虚拟化。虽然Big Switch网站上没有任何的详细信息,但是我认为它们正在开发控制器和交换机。
如果OpenFlow能够拥有足够多的客户,那么它将从根本上改变网络行业,因为我们目前所使用的控制协议(例如OSPF或者Spanning Tree或者DCB)将被软件控制器所取代。虽然这会促成硬件的商品化,但是软件控制器将成为网络行业中新的组成部分。...>>
问题九:数据结构到底怎么学比较好啊? 写数据结构代码编程了学习C语言,是大多数初学者的经验,其实有办法可以避免的。
多想> 多看 > 多写字 > 多动键盘
养成好的编程习惯很重要。
做任何工作之前,要把自己的思路整理清楚 参考别人的相关工作经验,针对自己的需求做分析 把思路落实到纸张上 采用自顶向下的编程方式,先把你的个函数的功能,入口和出口描述清楚 每个函数内部的执行流程,都要注释好。 最后再分段逐步编码。
这样可以有效的避免大多数的错误发生。 即便出现错误,也很容易定位到问题的所在。 不知道大家是怎样看待数据结构这门课的,有多少人觉得数据结构很难呢?我知道还是有一些同学这样觉得的,有时候我跟我的朋友讲要怎样学,讲了一大堆以后,他就向我抱怨:我以前c++都没有学好,数据结构更学不好了,这哪跟哪的话啊,数据结构与c++没有什么关系,我想假如抱有这样的心态,自己就不相信自己,那是不可能学好的,然后那些觉得数据结构很难的同学,我想他们应该会很看重数据结构的吧,然后就一天到晚捧着一本数据结构,这样不会觉得很累吗?而且因为觉得很难,就容易不相信自己,学的效率也不会很好,个人认为数据结构很好学,很容易学,或许这有点妄自菲薄吧,但是因为我觉得很容易,当然就会觉得自己没问题,学得很轻松,效果也还可以。大家都是从高考走过来的,应该知道心态的重要性吧,两种不同的心态,完全就是两种不同的效果。学了这么久数据结构了,我们到底在学些什么呢?不知道大家有没有想过,那现在我们现在来归纳一下我们学习的内容吧,其实学到现在我们也就学了几种普通的数据结构,象二叉树,树,图,还有排序的问题,前面的线性表和字符串也就是一些概念,当然还有一个很重要的KMP算法,然后在每种数据结构中我们也就是学到了若干处理的算法,我想真正数起来也就是几十个算法吧。学习数据结构也就是要掌握这几十种算法,多简单。至于如何掌握每个算法呢,我想就是多看看书,重要的是能够理解。 如果真的想学好数据结构的话,最好是能够自己思考问题,不要刚想了一会就觉得做不出来,然后就去问其他人。其实张老师给我们的作业还是基于我们的水平的,我绝对相信我们自己能够独自想出算法,虽有可能会比较长时间吧,但是这样肯定会比问其他人学到更多的东西。当然我并不是说不要问同学,有时候就是脑筋转不过来,一问别人就懂了,当然问了别人不能只是我知道了这个算法,还应该去想如何思考才能得到这个算法,这样水平会提高很多。
很多计算机专业的同学对于大学2年级开设的数据结构课程很是头痛. 看见大家总在谈论数据结构重要性,可使自己学习却总也找不到合适的方法. 下面我和大家分享一下我过去一年多以来学习和应用数据结构方面一些经验. 内容都是来自作者本人的一些经历和体验,希望对于大家学习数据结构有引导作用。 1什么是数据结构 数据结构从文字上面来看,为数据和结构两部分。这样就很容易联系到数据结构的本质是一种对于数据结构花的知识。补充一个知识点,数据结构本质和离散数学有很密切的关系。离散数学是处理的是离散(非连续的)的数据,站在数据结构的观点上来看,也可以理解是一种非连续数据的结构。 2数据结构和程序设计语言 数据结构和程序设计语言本身没有任何联系,唯一有的关系就实用程序语言去描述数据结构。 因为数据结构是一种抽象数据,通过程序设计语言可以将在计算机中进行实现。今天大学里数据结构课程常用来描述数据结构的语言有C程序设计语言,C 程序设计语言和JAVA程序设计语言.而对于喜欢其他语言的同学完全可以自己通过学习数据结构后用自己熟悉的程序设计语言去完成程序化的描述. 我自己过去......>>
问题十:用C语言写的数据结构的定义 这个语句是2条语句复合成的。
首先typedef 表示数据类型重定义
表示将结构类型struct {elementype data;struct node *next;}重定义为node
以后就可以用node表示struct {elementype data;struct node *next;} 类型了
拆开写应该更好理解一些
struct node
{
elementype data; 弧/elementype表示一种数据类型,可能是int/char等等
struct node *next; next 指针,用于链表结构指向下一个节点
};
typedef struct node node; 重定义struct node类型为node
重定义后数据定义struct node mynode;就等价于node mynode;了
⑦ 请问<算法导论>原书第2版是用的那种语言
是伪码,类似于C语言。
⑧ 实现《算法导论》中的习题,用什么语言比较好
算法导论?一般都写伪代码庆唯裂的吧
当然如果你一定要用一种语言来写,按照个人习惯吧。
我的比较建议C语言,山裂毕竟是比较多的人的入门语言,感觉用誉闭来写算法不错
⑨ 有哪些用 python 语言讲算法和数据结构的书
1.Python数据结构篇
数据结构篇主要是阅读[Problem Solving with Python](Welcome to Problem Solving with Algorithms and Data Structures) [该网址链接可能会比较慢]时写下的阅读记录,当然,也结合了部分[算法导论](Introction to Algorithms)
中的内容,此外还有不少wikipedia上的内容,所以内容比较多,可能有点杂乱。这部分主要是介绍了如何使用Python实现常用的一些数据结构,例
如堆栈、队列、二叉树等等,也有Python内置的数据结构性能的分析,同时还包括了搜索和排序(在算法设计篇中会有更加详细的介绍)的简单总结。每篇文
章都有实现代码,内容比较多,简单算法一般是大致介绍下思想及算法流程,复杂的算法会给出各种图示和代码实现详细介绍。
**这一部分是下
面算法设计篇的前篇,如果数据结构还不错的可以直接看算法设计篇,遇到问题可以回来看数据结构篇中的某个具体内容充电一下,我个人认为直接读算法设计篇比
较好,因为大家时间也都比较宝贵,如果你会来读这些文章说明你肯定有一定基础了,后面的算法设计篇中更多的是思想,这里更多的是代码而已,嘿嘿。**
(1)[搜索](Python Data Structures)
简述顺序查找和二分查找,详述Hash查找(hash函数的设计以及如何避免冲突)
(2)[排序](Python Data Structures)
简述各种排序算法的思想以及它的图示和实现
(3)[数据结构](Python Data Structures)
简述Python内置数据结构的性能分析和实现常用的数据结构:栈、队列和二叉堆
(4)[树总结](Python Data Structures)
简述二叉树,详述二叉搜索树和AVL树的思想和实现
2.Python算法设计篇
算法设计篇主要是阅读[Python Algorithms: Mastering Basic Algorithms in the Python Language](Python Algorithms: Mastering Basic Algorithms in the Python Language)[**点击链接可进入Springer免费下载原书电子版**]之后写下的读书总结,原书大部分内容结合了经典书籍[算法导论](Introction to Algorithms),
内容更加细致深入,主要是介绍了各种常用的算法设计思想,以及如何使用Python高效巧妙地实现这些算法,这里有别于前面的数据结构篇,部分算法例如排
序就不会详细介绍它的实现细节,而是毕亩燃侧重于它内在的算法思想。这部分使用了一些与数据结构有关的第三方模块,因为这篇的重点是算法的思想以及实现,所以并
没有去重新实现每个数据结构,但是在介绍算法的同时会分析Python内置数据结构以及第三方数据结构模块的优缺点,也就意味着该篇比前面都要难不耐缺少,但
是我想我的介绍应该还算简单明了,因为我用的都是比较朴实的语言,并没有像算法导论一样列出一堆性质和定理,主要是对着某个问题一步步思考然后算法就出来
了,嘿嘿,除此之外,里面还有很多关于python开发的内容,精彩真的不容错过!
这里每篇文章都有实现代码,但是代码我一般都不会分
析,更多地是分析算法思想,所以内容都比较多,即便如此也没有包括原书对应章节的所有内容,因为内容实在太丰富了,所以我只是选择经典的算法实例来介绍算
法核心思想,除此之外,还有不少内容是原书没有的,部分是来自算法导论,部分是来自我自己的感悟,嘻嘻。该篇对于大神们来说是小菜,请一笑而过,对于菜鸟
们来说可能有点难啃,所以最适合的是和我水平差不多的,对各个算法都有所了解但是理解还不算深刻的半桶水的程序猿,嘿嘿。手虚
本篇的顺序按照原书[Python Algorithms: Mastering Basic Algorithms in the Python Language](Python Algorithms: Mastering Basic Algorithms in the Python Language)的章节来安排的(章节标题部分相同部分不同哟),为了节省时间以及保持原着的原滋原味,部分内容(一般是比较难以翻译和理解的内容)直接摘自原着英文内容。
**1.
你也许觉得很多内容你都知道嘛,没有看的必要,其实如果是我的话我也会这么想,但是如果只是归纳一个算法有哪些步骤,那这个总结也就没有意义了,我觉得这
个总结的亮点在于想办法说清楚一个算法是怎么想出来的,有哪些需要注意的,如何进行优化的等等,采用问答式的方式让读者和我一起来想出某个问题的解,每篇
文章之后都还有一两道小题练手哟**
**2.你也许还会说算法导论不是既权威又全面么,基本上每个算法都还有详细的证明呢,读算法导论岂
不更好些,当然,你如果想读算法导论的话我不拦着你,读完了感觉自己整个人都不好了别怪小弟没有提醒你哟,嘻嘻嘻,左一个性质右一个定理实在不适合算法科
普的啦,没有多少人能够坚持读完的。但是码农与蛇的故事内容不多哟,呵呵呵**
**3.如果你细读本系列的话我保证你会有不少收获的,需要看算法导论哪个部分的地方我会给出提示的,嘿嘿。温馨提示,前面三节内容都是介绍基础知识,所以精彩内容从第4节开始哟,么么哒 O(∩_∩)O~**
(1)[Python Algorithms - C1 Introction](Python Algorithms)
本节主要是对原书中的内容做些简单介绍,说明算法的重要性以及各章节的内容概要。
(2)[Python Algorithms - C2 The basics](Python Algorithms)
**本节主要介绍了三个内容:算法渐近运行时间的表示方法、六条算法性能评估的经验以及Python中树和图的实现方式。**
(3)[Python Algorithms - C3 Counting 101](Python Algorithms)
原书主要介绍了一些基础数学,例如排列组合以及递归循环等,但是本节只重点介绍计算算法的运行时间的三种方法
(4)[Python Algorithms - C4 Inction and Recursion and Rection](Python Algorithms)
**本节主要介绍算法设计的三个核心知识:Inction(推导)、Recursion(递归)和Rection(规约),这是原书的重点和难点部分**
(5)[Python Algorithms - C5 Traversal](Python Algorithms)
**本节主要介绍图的遍历算法BFS和DFS,以及对拓扑排序的另一种解法和寻找图的(强)连通分量的算法**
(6)[Python Algorithms - C6 Divide and Combine and Conquer](Python Algorithms)
**本节主要介绍分治法策略,提到了树形问题的平衡性以及基于分治策略的排序算法**
(7)[Python Algorithms - C7 Greedy](Python Algorithms)
**本节主要通过几个例子来介绍贪心策略,主要包括背包问题、哈夫曼编码和最小生成树等等**
(8)[Python Algorithms - C8 Dynamic Programming](Python Algorithms)
**本节主要结合一些经典的动规问题介绍动态规划的备忘录法和迭代法这两种实现方式,并对这两种方式进行对比**
(9)[Python Algorithms - C9 Graphs](Python Algorithms)
**本节主要介绍图算法中的各种最短路径算法,从不同的角度揭示它们的内核以及它们的异同**
⑩ 数据结构和算法用什么语言来学习入手比较好
C语言凳毕会比较好,C更加基础,书籍大部分也是C、C++的,如果只考晌顷虑java和C++的话,C++比较好,算宴粗陆法的话《算法导论》很经典,数据结构的话可以看《算法与数据结构》傅清祥 王晓东版的。