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第一次实验——线性结构的更多相关文章

  1. 网络对抗第一次实验——PC平台逆向破解(5)M

    网络对抗第一次实验--PC平台逆向破解(5)M 实践一 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 操作步骤: 获取实验用文件pwn1,复制,复制出来的文件改名为20155 ...

  2. 20145226夏艺华《网络对抗》第一次实验拓展:shellcode注入+return-to-libc

    20145226夏艺华<网络对抗>第一次实验拓展:shellcode注入+return-to-libc shellcode注入实践 编写shellcode 编写shellcode已经在之前 ...

  3. 线性结构和非线性结构、稀疏数组、队列、链表(LinkedList)

    一.线性结构和非线性结构 线性结构: 1)线性绪构作为最常用的数据结构,其特点是数据元素之间存在一对一的线性关系 2)线性结构有两种不同的存储结构,即顺序存储结构和链式存储结构.顺序存储的线性表称为顺 ...

  4. 20145330《Java程序设计》第一次实验报告

    20145330<Java程序设计>第一次实验报告 实验一Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试Ja ...

  5. 20145320《Java程序设计》第一次实验报告

    20145320<Java程序设计>第一次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 18: ...

  6. 20145224&20145238 《信息安全系统设计基础》 第一次实验

    20145224&20145238 <信息安全系统设计基础>第一次实验 课程:信息安全系统设计基础 班级:1452 姓名:陈颢文 荆玉茗 学号:20145224 20145238 ...

  7. D_S 线性结构

    线性结构的定义:若结构是非空有限集,则有且仅有一个开始结点和一个终端结点,并且所有结点都最多只有一个直接前驱和一个直接后继. 线性结构的特点: 只有一个首结点和尾结点 除首尾结点外,其他结点只有一个直 ...

  8. 20145317彭垚 《Java程序设计》第一次实验实验报告

    20145317彭垚 <Java程序设计>第一次实验实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验名称:Java开发环境的 ...

  9. 20145103JAVA第一次实验报告

    20145103<Java程序设计>第一次实验报告 实验内容及其步骤 一.命令行下java程序开发 建立一个java文件,然后在命令行中,对程序进行javac编译,就生成了.class文件 ...

随机推荐

  1. sencha 2.3中自己定义PullRefreshFn给PullRefresh加入下拉刷新事件

    Sencha removed the refreshFn from the pullrefresh plugin in ST 2.2. Here is an user extension with g ...

  2. django之models学习总结

    from django.db import models # Create your models here. class Classes(models.Model): ''' 班级表 ''' tit ...

  3. Linux学习笔记(第零章)

    计算机概论 1.计算机组件   2.电脑容量   3.基础知识  

  4. 解决MAC下修改系统文件没权限的问题

    问题 用brew在mac上可以轻松的管理软件, 不过最新的mac系统升级后, brew执行update命令时会报权限不足的错误, 而且会提示执行命令sudo chown -R $(whoami) /u ...

  5. webdriver 获取页面response

    在selenium webdriver实现自动化抓取数据过程中,发现无法从webdriver获取页面response 查来查去最终在 stackoverflow 上找到了这一篇文章 文章中说:webd ...

  6. 浏览器与go语言的websocket通信

    简介WebSocket是HTML5一种新的协议.顾名思义,它在服务器和浏览器之间建立了全双工通信. 需求背景区块链测试系统web前端平台需要动态接收后端发送的状态信息改变一次测试session过程的状 ...

  7. linux 用时间创建文件夹

    命令: mkdir `date +%Y%m%d%H%M%S`

  8. Mybatis主线流程源码解析

     Mybatis的基础使用以及与Spring的相关集成在官方文档都写的非常详细,但无论我们采用xml还是注解方式在使用的过程中经常会出现各种奇怪的问题,需要花费大量的时间解决. 抽空了解一下Mybat ...

  9. JavaWeb基础—数据库连接池DBCP、C3P0

    一.基本概念 数据库连接池负责分配.管理和释放数据库连接 数据库连接池:(池用map来实现居多) 用处:为了可重用(销毁创建麻烦,开销大)(招培训老师的例子) 二.编写实现数据库连接池 池参数: 初识 ...

  10. 双系统IOS\windows7 换成Windows10后果

    昨天将双系统IOS 和Windows7 换成了Windows10后 发现原来在IOS盘"E"盘下面的文件都不显示了,而且盘符都打不开,那叫一个着急啊,开发项目的代码全在那个盘符里面 ...