JAVA实训报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2. 用JAVA实现栈
栈: package myPack; import java.util.Scanner; public class text { /** * @param args */ public static void main(String[] args) { Scanner scan=new Scanner(System.in); stack obj=new stack(); System.out.println("你想往栈里面输几个数?"); int temp=scan.nextInt(); for(int i=0;i<temp;i++) { int n=scan.nextInt(); obj.push(n); } System.out.println("判断栈是否为空!"); boolean y=obj.isempty(); System.out.println(y); System.out.println("现在获得栈顶元素!"); System.out.println(obj.gettoop()); System.out.println("现在栈元素出栈!"); for(int i=0;i<temp;i++) System.out.println(obj.pop()); } } package myPack; public class stack { private int a[] = new int[100]; private int top; private int n; public stack() {
} }
4. }用JAVA实现双链表 双链表: package myPack; import java.util.Scanner; public class text { /** * @param args */ public static void main(String[] args) { Scanner scan=new Scanner(System.in); doublelinkined obj=new doublelinkined(); System.out.println("你想做多长的双链表!"); int temp=scan.nextInt(); //obj.binary=temp; for(int i=0;i<temp;i++) { int n=scan.nextInt(); obj.add(n);
百度文库
关键词:JAVA,实训,数据结构,核心代码
一、前言
本周我们依学校安排,很荣幸参加了由向明老师主讲,赵 丹老师助理的JAVA实训。在这一周的时间里,我对JAVA这门 语言有了一定的了解,也初步掌握了JAVA的一些基本技能, 收获很大。通过这一周的学习,激发了我对编程的兴趣,也让 我也了一定的编程能力。
}/** * */ package Queue; /** * @author 实验教学中心 * */ public class main1 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int e; Queue q ; q= new Queue(); System.out.println("(1)初始化队列"); System.out.println("(2)依次进队元素 1,2,3"); q.enQueue(1); q.enQueue(2); q.enQueue(3); if(q.QueueEmpty()){ System.out.println("(3)队列为空"); } else{ System.out.println("(3)队列非空"); } int t=0; for(e=0;e<4;e++){ t=q.deQueue(); if(t!=0) { System.out.println("(4)出队一个元素" + t);
3. 用JAVA实现单链表
package mt public class linked { int data; linked next; linked pre; package mt; public class linkined { linked head = new linked(); linked p = new linked(); int size = 0; int binary; public linkined() { head.next = null; head.pre = null; p = head;
湖 南 农 业 大 学 Java数据结构课程设计报告
学生姓名:付常军 学 号: 200941903224 年级专业:09级计算机科学与技术2班 指导老师 戴小鹏 学 院:东方科技学 院
JAVA实训报告
付常军 (湖南农业大学东方科技学院,长沙 410128)
摘 要:JAVA实训课程的内容,包括对JAVA的初步了解, 运用JAVA实现并解决相关问题等。
} public void add(int d) { linked n = new linked(); n.data = d; p.next = n; n.next = null; // n.pre=null; p =n; size++; } public int get(int j) { linked p = new linked(); p = head; if (size <= 0) { System.out.println("err"); return -1; } else { for (int i = 1; i <=j; i++) { p = p.next; } return p.data; } } public void delete(int j) { linked p = new linked(); p = head; if (j < 2 || j > binary) System.out.println("error!"); else { linked n = new linked(); int i = 0;
二、实训内容
实训内容安排很合理,从基本的变量定义,初始化到类的继承等面 向对象高级应用,使我们对java有了一个较系统的了解,并能用java实 现一些简单的数据结构。
1.第一天
初步了解JAVA的发展领域,实用价值等内容; 了解JAVA虚拟机; 编写了第一个JAVA程序“HELLO WORLD” JAVA中的变量和数据类型,数据转换,程序控制结构,回收机制等
} } System.out.println("(5)队列元素的个数" + q.QueueLenth()); System.out.println("(6)依次进队元素 7,8,9"); for(e=7;e<10;e++){ q.enQueue(e); } System.out.println("(7)队列元素的个数" + q.QueueLenth()); System.out.println("(8)出队的序列" ); while(!q.QueueEmpty()){ t=q.deQueue(); if(t!=0) { System.out.println("(4)出队一个元素" + t); } } } }
2.第二天
JAVA中数组的声明,初始化以及一些其他的基本运用
3.第三天
JAVA中的对象的特征; 类与对象的区别; 访问权限,继承,借口与抽象类;
4.第四天
在JAVA中数据结构的基本运用;
5.第五天
用JAVA实现队列,链表,栈等基本的数据结构。
三、实训核心代码及截图 1.用JAVA实现队列
package Queue;
top = 0; } public void push(int i) { a[top] = i; n = top; top++; } public int pop() { if(top==-1) return 0; return a[--top]; } public void display() { int i = 0; for (i = n; i >= 0; i--) System.out.print(a[i]); } public int gettoop() { return a[n]; } public boolean isempty() { if (top != 0) return false; return true; } } 运行结果:
while (i + 1 != j) { p = p.next; i++; } n = p.next; p.next = n.next; } } public void display() { linked p = new linked(); p = head; while (p.next!= null) { p = p.next; System.out.print(p.data); } System.out.print("\n"); } public void update(int j,int n) { linked p = new linked(); p=head; if (size <= 0) { System.out.println("err"); } else{ for(int i=1;i<size;i++) { p=p.next; if(i==j) { p.data=n; // System.out.println(" p.data:"+ p.data); }
} } } } package mt; import java.util.Scanner; public class Text { /** * @param args */ public static void main(String[] args) { Scanner scan=new Scanner(System.in); linkined obj=new linkined(); System.out.println("请输入你要做多长的链表"); int temp=scan.nextInt(); obj.binary=temp; for(int i=0;i<temp;i++) { int t=scan.nextInt(); obj.add(t); } obj.display(); System.out.println("你想获得第几个元素"); temp=scan.nextInt(); System.out.println(obj.get(temp)); System.out.println("你想修改第几个元素"); temp=scan.nextInt(); int n=scan.nextInt(); obj.update(temp, n); obj.display(); System.out.println("你想删除第几个元素"); temp=scan.nextInt(); obj.delete(temp); obj.display();
public class SqQueue { public int MAX = 100; public int data[]= new int[MAX]; public int front= 0 ; public int rear= 0 ; } package Queue; public class Queue { private SqQueue q = new SqQueue(); public Queue(){ } public boolean QueueEmpty(){ return (q.rear==q.front); } public int QueueLenth(){ return (q.rear - q.front + q.MAX )% q.MAX; } public void enQueue(int e){ if((q.rear + 1) % q.MAX == q.front) { System.out.println("队满,不能进队"); return ; } q.rear = (q.rear + 1) % q.MAX; q.data[q.rear]=e; System.out.println("元素" + e + "已成功进队"); } public int deQueue() { if(q.front == q.rear){ System.out.println("队空,不能出队"); return 0; } q.front = ( q.front +1 ) % q.MAX; return q.data[q.front]; }
相关文档
最新文档