‘壹’ 求一本好的数据结构和算法的书
《数据结构与算法分析——C语言描述》(原书第2版),英文版的名称是《Data Structures and Algorithm Analysis in C》,作者是:(美)Mark Allen Weiss。原书曾被评为20世纪顶尖的30部计算机着作之一。这本书简体中文版翻译得相当不错.
比较浅显易懂的,1.数据结构与算法分析(java版高等院校计算机应用技术系列教材) 王世民
清华大学出版社 (2005-07出版)
2.数据结构--Java语言描述(高等学校教材计算机科学与技术) 朱战立
清华大学出版社 (2005-12出版)
‘贰’ Java 与 算法+数据结构 (100分)
说数据结构没用那是不可能的,但是要看你做什么了。
比如说你要血java,如果你想搞网站方面的话就简单了。
数据结构基本可以不用学,因为在web应用中,能用到的算法的地方少之又少,几乎就那么几个,想记不住都难。
但是如果你要往软件方面和手软方面发展的话就要学一部分了,但是这东西学是学不到的,能学到的只不过是思路,到时候自己发挥一下,想个算法就行了,算法这东西说难不难,难的东西有,但是没有你能用到的。
像你这样的情况我想说两点:
首先,说你想从事算法类的工作,那么选择什么样的语言都是一样的,算法肯定有,但是用到的都不多。刚进公司的时候一般是用不到算法的,因为算法都是别人想的,你也许有好的算法,但是别人不一定采用,但是你的算法基础不要丢掉,因为等你当了项目经理后这个是必不可少的。
其次,你要知道,在学计算机的路上,很少有人能学什么就做什么,大家都在被社会潮流推动,想要不掉队就只能随波逐流。因为毕竟我们都不想一辈子写代码。大家都是拿这东西做个跳板。
学java的路很长,但是也很有趣,希望你能学好。我想以你的算法基础,以后想成为专业精英不是问题。加油吧。
‘叁’ 新手初学Java有必要去学习数据结构与算法吗
还是有些必要的,大公司笔试面试基本都是靠计算机网络及数据结构与算法。
建议找些基础的算法如排序查找等入门就可以了,java新人用不到多深层次的算法,
新人初学Java的话建议还是讲基础知识弄通弄透比较好。
‘肆’ Java算法与数据结构代码
第1题:我给你搭建算法框架,具体需求,你只需往里面写Code即可:
publicclassProgram{
privatestaticfinalintN=6;
publicstaticvoidmain(String[]args){
Nodehead=newNode(-1,null);//定义头指针,带头结点的单链表
for(inti=0;i<N;i++){
Nodee=newNode(i+1,null);
tailInsert(head,e);
}
//Test
Nodep=head;
while(p.getNext()!=null){
p=p.getNext();
}
}
/**
*@paramhead实施尾插法算法的单链表头指针
*@parame所需的元素
*/
privatestaticvoidtailInsert(Nodehead,Nodee){
Nodep=head;
while(p.getNext()!=null){
p=p.getNext();//寻访单链表,直至到达单链表末尾
}
//实施尾插法
p.setNext(e);
}
}
classNode{
privateintid;//编号
privateNodenext;//单链表后继指针
privateStringvote;//选票
publicNode(){}
publicNode(intid,Nodenext){
super();
this.id=id;
this.next=next;
}
publicNode(intid,Nodenext,Stringvote){
super();
this.id=id;
this.next=next;
this.vote=vote;
}
@Override
publicStringtoString(){
return"Node[id="+id+",next="+next+"]";
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicNodegetNext(){
returnnext;
}
publicvoidsetNext(Nodenext){
this.next=next;
}
}
第2题:参看我以前的回答:https://..com/question/431512924412893084
算法思想已经写的清楚得不能在清楚了。转成Java就是小菜一碟。
‘伍’ 《数据结构与算法分析 java语言描述》这本书我连开始的级数公式都看不懂怎么办
数据结构的书有很多,内容大同小异,都是线性表、链表、栈和队列、树、图、排序、查找等内容。只是每一部分举例子时采用的样例不同而已,级数公式看不懂没关系,也不用专门去补习高等数学,略过这个例子,看其他能看懂的,把数据结构的基本思想掌握了即可。
‘陆’ 《数据结构与算法分析Java语言描述(英文版·第3版)》pdf下载在线阅读,求百度网盘云资源
《数据结构与算法分析》(韦斯 (Mark Allen Weiss))电子书网盘下载免费在线阅读
资源链接:
链接:
书名:数据结构与算法分析
作者:韦斯 (Mark Allen Weiss)
出版社:机械工业出版社
出版年份:2013-2-1
页数:614
内容简介:
本书是国外数据结构与算法分析方面的经典教材,使用卓越的Java编程语言作为实现工具讨论了数据结构(组织大量数据的方法)和算法分析(对算法运行时间的估计)。
随着计算机速度的不断增加和功能的日益强大,人们对有效编程和算法分析的要求也不断增长。本书将算法分析与最有效率的Java程序的开发有机地结合起来,深入分析每种算法,并细致讲解精心构造程序的方法,内容全面、缜密严格。
第3版的主要更新如下:
第4章包含AVL树删除算法的实现。
第5章进行了全面修订和扩充,现在包含两种较新的算法—cuckoo散列和hopscotch散列。
第7章包含基数排序的相关内容,并给出了下界证明。
第12章增加了后缀树和后缀数组的相关材料,包括Karkkainen和Sanders的线性时间后缀数组构造算法。
更新书中的代码,使用了Java 7中的菱形运算符。
作者简介:
Mark Allen Weiss佛罗里达国际大学计算与信息科学学院教授、副院长,本科教育主任和研究生教育主任。他于1987年获得普林斯顿大学计算机科学博士学位,师从Bob Sedgewick。 他曾经担任全美AP(Advanced Placement)考试计算机学科委员会的主席(2000—2004)。他的主要研究兴趣是数据结构、算法和教育学。
‘柒’ 帮忙做个关于数据结构与算法的题(用java语言描述),谢谢!
题目只提供了isPresent方法的spec,没有讲其他的,尤其是insert方法,参数是什么,是否需要多个重载?是在指定位置插入呢,还是怎样?remove方闹搭法也是,是液咐拿根据元素删除呢,还是根据简皮下标删除?另外,这个题目就是自己写一个ArrayList,楼主要是不会的话,可以自己参考JDK中java.util.ArrayList类的实现
‘捌’ 请推荐一本基于JAVA语言的数据结构和算法的书,中文版的
英文名:《Data Structures & Algorithms in Java》
中文名:《Java数据结构和算法》
作 者:Robert Lafore
出版社:中国电力出版社
阅读方法:相对与其他的数据结构和算法的书,这本书语言很简洁而且容易读,让你少了一些阅读算法书籍的苦恼,但是也不能指望很轻松的把它读完,毕竟,这也是描述算法的书呀。
不过幸运的是,如果只是为了锻炼工作技能,倒是不必把所有的算法细节都弄的一清二楚,掌握到能够选择针对实际问题而进行数据结构和算法的选择,基本上就能应付90%以上的情况了。
我们的建议是:只要你学的是JAVA,这本书就应该从头到尾的啃一遍,而且是细细的啃,不是象前一本《Java编程思想》那样的略读,不过,读这本书没什么时间限制,尽量读就行了,哪怕你已经工作了,再花业余的时间读下来也不迟。
另外,象算法这种东西,你弄明白一次,一辈子就明白了,不会再变了,所以,哪怕用一周、一个月的时间啃下来一个程序,也是值得的。
如果你着急工作,这本书可以略读,掌握住常用的数据结构和算法的特点(不是实现),就可以了。
如果你还在上学,有大量的时间,或者你想在大型公司(IBM、MicroSoft、Sun等)的笔试中有良好的表现,你就需要一个字一个字的仔细阅读了。