線性表的定義:線性表的順序表示指的是用一組地址連續的存儲單元依次存儲線性表的數據元素,因爲數組也是通過線性表存儲的,所以這裏用數組來寫
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;
}
}