线性表的定义:线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素,因为数组也是通过线性表存储的,所以这里用数组来写
let List = [
{
message:'第一个数据元素'
},
{
message:'第二个数据元素'
},
{
message:'第三个数据元素'
},
{
message:'第四个数据元素'
},
{
message:'第五个数据元素'
},
]
let obj = {
//arr当前数组
getLength:(arr)=>{
return arr.length;
},
//arr当前数组
//index 数组的下标
getValue:(arr,index)=>{
return arr[index];
},
//arr当前数组
//str 要查找的值
find:(arr,str)=>{
arr.filter(x=>x.message=str);
},
//arr当前数组
//str 要插入的值
//index 数组的下标
insert:(arr,str,index)=>{
if(index>arr.length||index<0){
throw new Error('index不合法!');
}else{
for(let i=arr.length-1;i>=index;i--){
arr[i+1]=arr[i];
}
arr[index] ={
message:str
}
}
return arr;
},
//arr当前数组
//index 数组的下标
del:(arr,index)=>{
if(index>arr.length||index<0){
throw new Error('index不合法!');
}else{
for(let i=index;i<=arr.length-2;i++){
arr[i]=arr[i+1];
}
--arr.length
}
return arr;
},
//arr当前数组
//str 要改变的值
//index 数组的下标
change:(arr,str,index)=>{
if(index>arr.length||index<0){
throw new Error('index不合法!');
}else{
arr[index].message = str;
}
return arr;
}
}