20162327WJH第一次实验——线性结构
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);
}
}
- 代码链接
- 测试截图

20162327WJH第一次实验——线性结构的更多相关文章
- 网络对抗第一次实验——PC平台逆向破解(5)M
网络对抗第一次实验--PC平台逆向破解(5)M 实践一 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 操作步骤: 获取实验用文件pwn1,复制,复制出来的文件改名为20155 ...
- 20145226夏艺华《网络对抗》第一次实验拓展:shellcode注入+return-to-libc
20145226夏艺华<网络对抗>第一次实验拓展:shellcode注入+return-to-libc shellcode注入实践 编写shellcode 编写shellcode已经在之前 ...
- 线性结构和非线性结构、稀疏数组、队列、链表(LinkedList)
一.线性结构和非线性结构 线性结构: 1)线性绪构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 2)线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构.顺序存储的线性表称为顺 ...
- 20145330《Java程序设计》第一次实验报告
20145330<Java程序设计>第一次实验报告 实验一Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...
- 20145320《Java程序设计》第一次实验报告
20145320<Java程序设计>第一次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 18: ...
- 20145224&20145238 《信息安全系统设计基础》 第一次实验
20145224&20145238 <信息安全系统设计基础>第一次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...
- D_S 线性结构
线性结构的定义:若结构是非空有限集,则有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前驱和一个直接后继. 线性结构的特点: 只有一个首结点和尾结点 除首尾结点外,其他结点只有一个直 ...
- 20145317彭垚 《Java程序设计》第一次实验实验报告
20145317彭垚 <Java程序设计>第一次实验实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的 ...
- 20145103JAVA第一次实验报告
20145103<Java程序设计>第一次实验报告 实验内容及其步骤 一.命令行下java程序开发 建立一个java文件,然后在命令行中,对程序进行javac编译,就生成了.class文件 ...
随机推荐
- 构建 CDN 分发网络架构
cdn基本架构: CDN的基本目的:1.通过本地缓存实现网站的访问速度的提升 CDN的关键点:CNAME在域名解析:split智能分发,引流到最近缓存节点
- Ext4文件系统架构分析(二)
接着上一篇博文,继续分析Ext4磁盘布局中的元数据. 1.7 超级块 超级块记录整个文件系统的大量信息,如数据块个数.inode个数.支持的特性.管理信息,等待. 如果设置sparse_super特性 ...
- easyui div 上下布局 最大化按钮 隐藏标题
背景:easyui在做上下布局的时候,上面是数据列表,下面是数据图表.如下图 需要在上下面板右上角加上最大化按钮,以便可以全屏显示.逻辑就是当上面点击最大化时候,隐藏下面,主意:此时需要将下面的div ...
- Hadoop源码学习笔记之NameNode启动场景流程一:源码环境搭建和项目模块及NameNode结构简单介绍
最近在跟着一个大佬学习Hadoop底层源码及架构等知识点,觉得有必要记录下来这个学习过程.想到了这个废弃已久的blog账号,决定重新开始更新. 主要分以下几步来进行源码学习: 一.搭建源码阅读环境二. ...
- Golang并行判断素数
## Golang多核判断素数方式 package main import ( "bufio" "fmt" "os" "runti ...
- LaTeX源代码显示宏包listings应用备忘之新语言定义
我目前了解的LaTeX中有关源代码显示的宏包有两个,这里介绍其中的listings宏包.listings宏包中已经定义了部分计算机语言的显示样式,但还是有些语言没有定义,我们一起看一下如何定义新的 ...
- c# multi-ply download ui
first neet add an user control "DownloadBar": /* Created by SharpDevelop. User: gwang Date ...
- Asp调用存储过程,command.CreateParameter 参数值的类型说明
Asp调用存储过程,command.CreateParameter 参数值的类型说明 Asp调用各种存储过程,包括带参数,无参数,输入输出参数,带返回值等. 1,调用没有参数的存储过程 <% s ...
- linux java jdk环境变量设置之后,依旧提示 No such file or directory
今天又默默的在linux下安装java 明明是很简单的事情,在~/.bashrc中添加如下内容: export JAVA_HOME=/home/ubuntu/jdkexport CLASSPATH=. ...
- Openstack入门篇(十三)之云主机创建
1.知识回顾与端口总结 service 功能 MySQL 为各个服务提供数据存储 RabbitMQ 为各个服务之间通信提供交通枢纽 Keystone 为各个服务器之间通信提供认证和服务注册 Glanc ...