(1-1)在notepad輸入如下JS程式碼並存檔在桌面為d01.htm
<script> var a = [9, 5, 8, 1, 3 , 2 , 7]; var i,j,t; document.write("插入排序法<br>排序前 a[]="+a); for (i=1;i<a.length;i++){ t=a[i]; document.write("<br> i=" + i +"待插入元素t=a[i]=" + a[i] + " : a[]=" + a); for (j=i;j>0 && t<a[j-1];j--) a[j]=a[j-1]; a[j]=t; } document.write("<br>排序後 a[]="+a); </script>
(1-2) 用firefox開啟d01.htm,瀏覽結果如下:
插入排序法 排序前 a[]=9,5,8,1,3,2,7 i=1待插入元素t=a[i]=5 : a[]=9,5,8,1,3,2,7 i=2待插入元素t=a[i]=8 : a[]=5,9,8,1,3,2,7 i=3待插入元素t=a[i]=1 : a[]=5,8,9,1,3,2,7 i=4待插入元素t=a[i]=3 : a[]=1,5,8,9,3,2,7 i=5待插入元素t=a[i]=2 : a[]=1,3,5,8,9,2,7 i=6待插入元素t=a[i]=7 : a[]=1,2,3,5,8,9,7 排序後 a[]=1,2,3,5,7,8,9
(2-1)在notepad輸入如下JS程式碼並存檔在桌面為d02.htm
<script> var b = [9, 5, 8, 1, 3 , 2 , 7]; var i,j,t; document.write("選擇排序法<br>排序前 b[]="+b); for (i=0;i<b.length-1;i++){ var mini=i; for (j=i+1;j<b.length;j++){ if (b[j]<b[mini]) mini=j; } t=b[mini]; b[mini]=b[i]; b[i]=t; document.write("<br>第"+i +"回合, b[]="+b); } document.write("<br>排序後 b[]="+b); </script>
(2-2) 用firefox開啟d02.htm,瀏覽結果如下:
選擇排序法 排序前 b[]=9,5,8,1,3,2,7 第0回合, b[]=1,5,8,9,3,2,7 第1回合, b[]=1,2,8,9,3,5,7 第2回合, b[]=1,2,3,9,8,5,7 第3回合, b[]=1,2,3,5,8,9,7 第4回合, b[]=1,2,3,5,7,9,8 第5回合, b[]=1,2,3,5,7,8,9 排序後 b[]=1,2,3,5,7,8,9
(2-3)在notepad輸入如下JS程式碼並存檔在桌面為d02f.htm
<script> var b = [9, 5, 8, 1, 3 , 2 , 7]; var i,j,t; document.write("選擇排序法<br>排序前 b[]="+b); ssort(); document.write("<br>排序後 b[]="+b);
for (i=0;i<20;i++) b.push(30-i); document.write("選擇排序法<br>排序前 b[]="+b); ssort(); document.write("<br>排序後 b[]="+b);
function ssort(){ for (i=0;i<b.length-1;i++){ var mini=i; for (j=i+1;j<b.length;j++){ if (b[j]<b[mini]) mini=j; } t=b[mini]; b[mini]=b[i]; b[i]=t; document.write("<br>第"+i +"回合, b[]="+b); } } </script>
(3)參考文章:
C++ :
JavaScript :
|