实验二 线性表-顺序表(JavaScript实现)
来源:互联网 发布:智能课程表软件 编辑:程序博客网 时间:2024/06/07 03:16
实验二 线性表-顺序表(JavaScript实现)
实验目的
巩固线性表的数据结构的存储方法和相关操作,学会针对具体应用,使用线性表的相关知识来解决具体问题。
实验内容
建立一个由n个学生成绩的顺序表,n的大小由自己确定,每一个学生的成绩信息由自己确定,实现数据的对表进行插入、删除、查找等操作。分别输出结果。
要求:
用顺序表来实现。
实验步骤
//建立一个长度为5的数组
var items=new Array(5); items = []; this.items = items;
//设置Symbol的值为false,当它为true时返回所寻找元素的位置
this.findElem = function (data) { var Symbol = false; var temp = 0; for (var i = 0; i < items.length; i++) { if (items[i] == data) { Symbol = true; temp = i + 1; //元素位置 } } if (Symbol) { return temp; } };
//按元素位置查找,返回元素内容
this.getElem = function (num) { if (num > items.length || num < 1 || items.length == 0) { return false; } else { return items[num - 1]; //数组下标是从0开始,故(-1) } };
//插入元素
this.ListInsert = function (data, poi) { if (poi > items.length || poi < 1 || items.length == 0) { return false; } else { for (var i = items.length; i >= poi - 1; i--) { items[i + 1] = items[i]; //将 poi-1 后面的元素都往后移 } items[poi - 1] = data; return items; //返回数组 } };
//删除元素
this.ListDelete = function (poi) { var temp = items[poi - 1]; if (poi < 1 || poi > items.length || items.length == 0) { return false; } else { for (var i = poi; i < items.length; i++) { items[i - 1] = items[i]; } return temp; } };
//测试代码
var list = new orderList(); //创建一个新表list.items.push("小王 80", "小明 60", "晓红 70" ); //向空数组中添加元素console.log(list.items); //显示所有元素console.log(list.findElem("小明 60")); //按内容查找console.log(list.getElem(1)); //按位置查找console.log(list.ListInsert("王晶 90", 2)); //在第三个元素前面插入一个元素console.log(list.ListDelete(3)); //删除第二个元素console.log(list.items); //显示所有元素
测试结果
阅读全文
0 0
- 实验二 线性表-顺序表(JavaScript实现)
- 实验二 线性表-单链表(JavaScript实现)
- 《数据结构》实验二:线性表的实验(顺序表)
- 《数据结构》实验二:线性表的实验(顺序表)
- 终于完成~《数据结构》实验二:线性表的实验(实现一个N个学生成绩的顺序表)
- 实验二 线性表实验之顺序表和单链表的实现
- 实验1 线性表的顺序实现
- 《数据结构》实验二:线性表的实验 【顺序表】
- 《数据结构》实验二:线性表实验(顺序表)
- 实验二 线性表综合实验之顺序表
- 数据结构:实验二线性表综合实验①顺序表
- 实验二 线性表综合实验——顺序表
- 实验二 线性表综合实验之《顺序表》
- 实验二线性表综合实验-顺序表
- 实验一:线性表实验-顺序表的实现
- 实验二: 线性表实验 第一部分 顺序表
- 《数据结构》实验二: 线性表综合实验——(1)顺序表
- 实验二:线性表实验(1)
- Handler 使用方法详解
- request和response
- 第五周项目三
- leetcode 383. Ransom Note HashMap查询加速
- <!-- 自动推送工具代码-->
- 实验二 线性表-顺序表(JavaScript实现)
- Modbus 通讯协议数据帧之间的时间停顿间隔 “3.5字符”定义
- Linux——用户
- 堆和栈的区别(转)
- 2.3 Spring4 快速入门-bean 的注入与初始化和销毁
- AsyncTask异步处理
- Spark的性能调优
- 走穿java23种设计模式-5原型模式
- IICvs SPI