當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
实验一线性表的基本操作实现及其应用(JavaScript实现)
生活随笔
收集整理的這篇文章主要介紹了
实验一线性表的基本操作实现及其应用(JavaScript实现)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實驗一線性表的基本操作實現及其應用(JavaScript實現)
實驗目的
實驗內容
建立 n 個元素的順序表( n 的大小和表里數據自己確定) , 實現相關的操作: 輸出, 插
入, 刪除, 查找等功能。 編寫完整程序實現, 程序語言不限定, 使用技術形式不定。
使用順序表來實現約瑟夫環問題。
實驗步驟
實驗要求
//判斷線性表是否為空,若為空返回true,否則false
function listEmpty(list) {return list.length > 0 ? false : true; }//清空線性表
function clearList(list) {list.length = 0; }//返回位置為i的元素
function getElem(list, i) {if (list.length > i) {return list[i];} else {return -1;} }//在線性表中查找和給定值相等的元素,若找到返回位置,否則返回-1
function locateElem(list, l) {for (var i=0;i<list.length;i++) {if (list[i] == l) {return i;}}return -1; }//在線性表的第j個位置插入元素e,插入失敗彈窗提醒
function listInsert (list, j, e) {//alert(list.length < j)if (list.length < j) {alert('插入元素失敗');} else if (list.length == i) {list.push(e);} else {list.length++;for(var i=list.length;i>j;i--){list[i-1] = list[i-2];}list[j] = e;} }//刪除線性表中指定位置的元素,刪除失敗彈窗提醒
function listDelete (list, j) {if (list.length <= j){alert('刪除失敗');} else {for (var i=j;i<list.length-1;i++) {list[i] = list[i+1];}list.length--;} }// 測試代碼
var arr = []; for (var i=0;i<23;i++){arr[i] = i; } alert(getElem ( arr, 21 )); alert(locateElem ( arr, 7 )); listInsert (arr, 3, 5); listDelete (arr, 5); alert(arr);// 測試代碼
var arr = []; for (var i=0;i<23;i++){arr[i] = i; } alert(getElem ( arr, 21 )); alert(locateElem ( arr, 7 )); listInsert (arr, 3, 5); alert(arr); listDelete (arr, 0); alert(arr);運行結果
總結
其實JS中有個splice() 方法,那就不用慢慢寫了……
- 定義和用法
splice() 方法向/從數組中添加/刪除項目,然后返回被刪除的項目。 注釋:該方法會改變原始數組。
- 語法
arrayObject.splice(index,howmany,item1,…..,itemX)
index:必需。整數,規定添加/刪除項目的位置,使用負數可從數組結尾處規定位置。
howmany:必需。要刪除的項目數量。如果設置為 0,則不會刪除項目。
- 返回值
- -
類型:Array
包含被刪除項目的新數組,如果有的話。
- 說明
splice() 方法可刪除從 index 處開始的零個或多個元素,并且用參數列表中聲明的一個或多個值來替換那些被刪除的元素。 如果從 arrayObject 中刪除了元素,則返回的是含有被刪除的元素的數組。
總結
以上是生活随笔為你收集整理的实验一线性表的基本操作实现及其应用(JavaScript实现)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 贝叶斯学习及共轭先验
- 下一篇: JavaScript栈的实现