五道java语言描述的数据结构编程题,请求给予详细解答

作者&投稿:宁群 (若有异议请与网页底部的电邮联系)
5. 用Java语言描写数据结构中的算法与用其它语言描述算法有什么优缺点~

优点:java是面向对象的语言,相对于面向过程语言来说,是一大进步.java把该语言中的所以东西都归为类和对象,一切都是类和对象,就是万事万物皆对象.这样的好处是,把要解决的问题,也可以说是算法看成一个类,一个对象,看作对象来处理,这个对象中有属性,有方法.相比面向过程编程语言,如c语言,软件重用性和软件可维护性得到加强,这体现在算法中.

缺点:就运行速度慢,汇编最快,然后是c语言(面向过程)等,这些都可以直接操作内存.所以速度是比较快的,而java是通过中间码+虚拟机机制运行的,虽然可以实现跨平台,但是速度慢.

http://download.csdn.net/download/tangzhnju/3688376, 别人的劳动成果,我只是搬运工,我下载看了下,好像不是所有题目都有答案,不过也很有参考意义
补充:不好意思,没看清楚作者应该不是你需要的那一份

第一题:

//使用集合提供的工具方法
public static List<Integer> merge(List<Integer> a, List<Integer> b) {
//a,b not null
//全部放到一个set里面,使得元素合并
Set<Integer> set = new HashSet<Integer>(a);
set.addAll(b);
//将set里面的元素放到列表再转为数组
Integer[] array = new ArrayList<Integer>(set).toArray(new Integer[1]);
//升序排序
Arrays.sort(array);
//将排序后的数组转为list
return Arrays.asList(array);
}

//自己写的算法, a为升序列表,b为降序列表
public static List<Integer> merge2(List<Integer> a, List<Integer> b) {
//a,b not null
int aSize = a.size();
int bSize = b.size();
List<Integer> result = new ArrayList<Integer>();
int aIndex = 0;// 升序列表从首位开始
int bIndex = bSize - 1;// 降序列表从末尾开始
int aEl;
int bEl;
// 循环终止条件为: a 或者 b 列表遍历完
while (aIndex < aSize && bIndex >= 0) {
aEl = a.get(aIndex);
bEl = b.get(bIndex);
if (aEl < bEl) {
result.add(aEl);
aIndex++;
} else {
result.add(bEl);
bIndex--;
}
}
// 将某个未遍历完的列表中的元素添加到结果(包括了任意一个列表为空列表的情况)
if (aIndex < aSize) {
for (int i = aIndex; i < aSize; i++) {
result.add(a.get(i));
}
}
else if (bIndex > 0) {
for (int i = bIndex; i >= 0; i--) {
result.add(b.get(i));
}
}
return result;
}


Java是什么意思啊?
Java是一种编程语言,用来做计算机编程的,原本设计这个语言的时候,因为一中咖啡的名字而命名。因为计算机只认识“000110011011110011” 的标准计算机语言,但是人不能记住二级制的代码,所以编写了各种编程语言,可以翻译成计算机能看懂的内容。

java语言的八大优点?
另外,还有几个重要的功能,加速功能,减速功能,刹车,转弯功能等。我们也可以把这些功能称作是他们具有的方法,而物理量是它们的状态描述。仅仅用物理量或功能不能很好的描述它们。在现实生活中,我们用这些共有的属性和功能给出一个概念机动车类。一个具体的轿车就是机动车类的一个实例对象.Java语言与...

Java名词解释
Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术...

请问这个两道题用java语言怎么编写?
我把两题的写在同一个类里了,代码里面有注释说明,代码过程用图片的形式贴在下面。运行结果如下:num1值为:8,num2值为:2 调用加法方法:8+2=10 调用减法方法:8-2=6 调用乘法方法:8×2=16 调用除法方法:8÷2=4 1\/1+1\/2+1\/3...+1\/100的计算结果为:5.187377 代码图片如下:

java的全称是什么?
你好!Java是Sun公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和C++类似。同时,Java也是一种跨平台的程序设计语言。用Java语言编写的程序叫做“Applet”(小应用程序),用编译器将它编译成类文件后,将它存在WWW页面中,并在HTML档上作好相应标记,用户端只要装上Java的客户软件就...

java的发展历史
即Java语言编译后产生的是虚机器码,虚机器码运行在一个解释器上,每一个操作系统均有一个解释器,这样一来,Java就成了平台无关语言。这和Gosling设计的Sun NeWs窗口系统有着相同的技术味道,在NeWs中用户界面统一用Postscript描述,不同的显示器有不同的Postscript解释器,这样便保证了用户界面的良好的可移植性。当...

java语言if语句三种形式分别在什么时候使用
该类型库的内容被转换为C++类,主要用于描述COM界面。java语言 使用传参形式构成sql语句与使用拼写构成的sql语句的区别, 两者功能绝对不一样。 传参是最有效的防止SQL注入的手段之一,也是最后一道防止SQL注入的墙。 日常开发中,如果质量控制做得好,拼写是不会过quality control这一关的。 最...

JAVA主要是用来干什么的呢?
其实,Java的内容很丰富,可以实现的功能也有很多。我们常常说的Java,首先它是一种计算机编程语言,程序员用它来和计算机交流,把要求和设想用Java语言表达出来,这个过程就是我们所说的使用Java编程,所以我们说Java是一种计算机编程语言。为了让计算机看懂,Java会有一系列的规则和约定,这些就是Java的语法...

这道题用java语言该怎么做,请大神帮助,谢谢
import java.util.Scanner;public class Demo { public static void main(String[] args){ int m=0,d1,d2;System.out.print("1.加法\\n2.减法\\n3.乘法\\n4.除法\\n请选择一个菜单:");m=Integer.parseInt(sc.nextLine());if(m>0 && m<5){ System.out.print("请输入第一个操作数:");...

请问这道题目的程序怎么编写?(用Java语言编写)
package test;public class Complex { private int realpart;\/\/复数的实数部分 private int imaginprt;\/\/复数的虚数部分 \/\/构造函数,将复数的实部和虚部都置0;public Complex(){ realpart=0;imaginprt=0;} \/\/构造函数,形参real为实部的初值,imagin为虚部的初值。public Complex(int real,int imagin...

北流市18223837113: 数据结构 JAVA语言描述 求大神们帮补充完善 -
才溥氨苄: public void nextOrder() { for(int i=0;i<length; i++){ if(listArray[i]>0){//如果listArray里装的是数字,可以直接比较,如果为其他,需要将它转化为数字在比较 System.out.println(listArray[i].toString()); } } } 第二个跟上面一样

北流市18223837113: (java编程)采用双向链表作数据结构,编写一个通讯录管理系统. -
才溥氨苄: #include #include using namespace std;#define SIZE 10 struct AddrList { string name; string sex; int age; string QQ; }addrlist[SIZE]; int main() { int i; int j; cout<<"输入要输入的记录数量:"; cin>>i; if (i>SIZE) { cout<<"输入的记录数量大于顺序...

北流市18223837113: 两道java数据结构题~~ -
才溥氨苄: 我没有时间写不过告诉你算法吧1.栈是后入先出,队列是先入先出,那么两个栈,两次LIFO之后不是就是先入先出嘛2.链表两个域,那么先存储头指针所指,再用前后两个引用变量进行反向赋值

北流市18223837113: 数据结构JAVA 线性表编程代码 -
才溥氨苄: import java.util.List; import java.util.LinkedList; public class SortList { public staticvoid sort(List list1,List list2,List list3){ int i=0,j=0; //Iterator it1 = list1.iterator();//本来准备用迭代器的,没时间,就这样了 //Iterator it2 = list2.iterator(); while(i if(list1....

北流市18223837113: Java中的数据结构有哪些 -
才溥氨苄: List相关:包括ArrayList(基于数组),LinkedList(基于链表),Stack等 Map相关:包括TreeMap,HashMap等 Set相关:包括TreeSet,HashSet等 总的来说,常见数据结构Java集合框架中都有实现.

北流市18223837113: JAVA数据结构哪些? -
才溥氨苄: 主要是3种接口:List Set Map List:ArrayList,LinkedList:顺序表ArrayList,链表LinkedList,堆栈和队列可以使用LinkedList模拟 Set:HashSet没有重复记录的集合 Map:HashMap就是哈希表 二叉树可以利用递归的思想来模拟自行设计,从JDK5开始还提供了一个新的队列接口 图!!!没遇到过这样的情况,恐怕还是要自己模拟

北流市18223837113: 关于数据结构(java)的一个代码 -
才溥氨苄: 描述栈抽象数据类型的SStack接口的声明 public interfaceSStack<E> //栈接口 { boolean isEmpty(); //判断是否空栈,若空栈返回true boolean push(E element); //元素element入栈,若操作成功返回true E pop(); //出栈,返回当前栈顶元素...

北流市18223837113: 用Java语言描写数据结构中的算法与用其他语言描述算法各有什么优缺点?
才溥氨苄: 本来算法和语言没有太大关系,用什么来描述都可以. 优点:Java语言对于一些小的算法描述起来更方便,因为Java语言的抽象程度比较高.并且不用考略内存分配的问题. 缺点:但是对于大型算法要考略到执行效率的时候,Java就不太适合,Java的运行速度相对于C/C++要慢一些,并且Java是在JVM虚拟机上运行的,虽然优点是跨平台,但是很多算法是要求和底层打交道,用Java反而显得不太方便.

北流市18223837113: 求一本用Java语言描述的数据结构与算法的入门书籍 -
才溥氨苄: 1,数据结构与算法分析(Java版高等院校计算机应用技术系列教材) 王世民 清华大学出版社 (2005-07出版) 这本书最合适了,原价才22元.http://www.amazon.cn/mn/detailApp?qid=1204378864&ref=SR&sr=1-8&uid=168-3893319-5388224...

北流市18223837113: 求助用JAVA编写一个数据结构堆栈的演示程序 -
才溥氨苄: /** 堆栈 */ class Stack { private String name; private String[] buffer=new String[100]; int point=-1; public Stack(String name){this.name=name;} public String getName(){return name;} public synchronized int getPoint(){return point;} public ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网