闲着没事写下js各种排序算法

来源:互联网 发布:淘宝新店提取 编辑:程序博客网 时间:2024/05/16 15:55

 冒泡排序

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script type="text/javascript">function showr(msg){var box=document.getElementById("showresult");var p=document.createElement("p");p.innerHTML=msg;box.appendChild(p);}</script></head><body><div id="showresult" > </div></body><script type="text/javascript">with(m=Math){r=random;}var arr=[];for (var i=0;i<10;i++) {arr[i]=parseInt(r()*100);}function mysort(arr,len){for(var i=0;i<len-1;i++){var a=arr[i];var b=arr[i+1];if(a>b){arr[i+1]=a;arr[i]=b;}showr(arr);if(i==(len-2)){showr("排序一次");mysort(arr,i+1);}}}showr("begin");mysort(arr,arr.length);showr("end");</script></html>


 插入算法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>插入排序</title><script type="text/javascript">function showr(msg){var box=document.getElementById("showresult");var p=document.createElement("p");p.innerHTML=msg;box.appendChild(p);}</script></head><body><div id="showresult" > </div></body><script type="text/javascript">with(m=Math){r=random;}var arr=[];for (var i=0;i<10;i++) {arr[i]=parseInt(r()*100);}function mysort(arr,len){sortarr=arr;for(var i=1;i<sortarr.length;i++){temp=sortarr[i];key=i;while(key>=1&&temp<sortarr[key-1]){sortarr[key]=sortarr[key-1];key--;}sortarr[key]=temp;showr("sort"+i+":"+sortarr);}}showr("begin");showr(arr);mysort(arr,arr.length);showr("end");</script></html>