20162327WJH第一次实验——线性结构
实 验 报 告
实 验 报 告
课程:程序设计与数据结构
班级: 1623
姓名: 王旌含
学号:20162327
成绩: 2分
指导教师:娄嘉鹏 王志强
实验日期:9月25日
实验密级: 非密级
预习程度: 已预习
实验时间:15:25-17:15
必修/选修: 必修
实验序号: cs_23
一、实验内容
- 1、Java中的线性表的测试:过程,问题
- 2、Java中的线性表的应用:过程,问题
- 3、顺序表的实现(伪代码,产品代码,测试代码):过程(分析,设计,实现,测试),问题
- 4、链表的实现(伪代码,产品代码,测试代码):过程(分析,设计,实现,测试),问题
- 5、Java ArrayList,LinkedList源码分析:过程,学到的技巧
二、实验步骤
实验一
- 1、测试代码及过程:
import org.junit.Test;
import java.util.LinkedList;
import static org.junit.Assert.*;
/**
* Created by Administrator on 2017/9/25/025.
*/
public class LinkedlistTest {
@Test
public void contains() throws Exception {
boolean last = false;
LinkedList a=new LinkedList();
a.add("wangjinghan");
a.add("WJH");
a.add("tonying");
last = a.contains("WJH");
assertEquals(true,last);
// = a.contains("WWW");
// assertEquals(true,last);
}
@Test
public void add() throws Exception {
boolean last = false;
LinkedList a=new LinkedList();
last = a.add(100);
assertEquals(true,last);
}
@Test
public void remove() throws Exception {
boolean last;
LinkedList a=new LinkedList();
a.add("wangjignhan");
a.add("WJH");
//a.add("tingying317");
last = a.remove("wangjinghan");
//assertEquals(true,last);
last = a.remove("WJH");
assertEquals(true,last);
}
}
- 代码链接
- 测试截图:
实验二
- 测试代码及过程
import org.junit.Test;
import java.util.ArrayList;
import java.util.Random;
import static org.junit.Assert.*;
/**
* Created by Administrator on 2017/10/7/007.
*/
public class cListTest {
@Test
public void mergeSortedList() throws Exception {
cList cList = new cList();
Random random = new Random();
ArrayList<Integer> alist = new ArrayList<>();
ArrayList<Integer> blist = new ArrayList<>();
int a=0;
for(int i=0;i<13;i++){
a = random.nextInt(100);
alist.add(a);
}
for(int i=0;i<8;i++){
a = random.nextInt(100);
blist.add(a);
}
cList.Sort(alist);
System.out.println("alist = " + alist);
cList.Sort(blist);
System.out.println("blist = " + blist);
System.out.println("cList = " + cList.mergeSortedList(alist,blist));
}
}
- 代码链接
- 测试截图
实验三
- 测试代码及过程
import org.junit.Test;
import java.util.Random;
import static org.junit.Assert.*;
/**
* Created by Administrator on 2017/10/8/008.
*/
public class MyArrayListTest<T> {
MyArrayList list = new MyArrayList();
T [] arr=(T [])new Object [10];
Random random = new Random();
@Test
public void add() throws Exception {
MyArrayList list = new MyArrayList();
list.add(34);
list.add(4);
list.add(5);
list.add(3);
list.add("wangjignhan");
list.add("王旌含");
System.out.println(list.toString());
}
@Test
public void contains() throws Exception {
MyArrayList list = new MyArrayList();
boolean last = false;
list.add(12);
list.add(5);
list.add(18);
list.add("wangjignhan");
list.add("王旌含");
last = list.contains(5);
assertEquals(true,last);
}
@Test
public void remove() throws Exception {
MyArrayList list = new MyArrayList();
boolean last;
list.add(8);
list.add(13);
list.add(4);
list.add(45);
System.out.println(list.toString());
list.remove(4);
list.remove(8);
System.out.println(list.toString());
// assertEquals(true, last);
}
}
- 代码链接
- 测试截图