排序1:
function InsertSort(arr) { //插入排序->直接插入法排序
var st = new Date();
var temp, j;
for(var i=1; i<arr.length; i++) {
if((arr[i]) < (arr[i-1])) {
temp = arr[i];
j = i-1;
do {
arr[j+1] = arr[j];
j--;
}
while (j>-1 && (temp) < (arr[j]));
arr[j+1] = temp;
}//endif
}
status = (new Date() - st) + ' ms';
return arr;
}排序2:
function BubbleSort(arr) { //交换排序->冒泡排序
var st = new Date();
var temp;
var exchange;
for(var i=0; i<arr.length; i++) {
exchange = false;
for(var j=arr.length-2; j>=i; j--) {
if((arr[j+1]) < (arr[j])) {
temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
exchange = true;
}
}
if(!exchange) break;
}
status = (new Date() - st) + ' ms';
return arr;
}
排序3:
function QuickSort(arr) { //交换排序->快速排序
if (arguments.length>1) {
var low = arguments[1];
var high = arguments[2];
} else {
var low = 0;
var high = arr.length-1;
}
if(low < high){
// function Partition
var i = low;
var j = high;
var pivot = arr[i];
while(i<j) {
while(i<j && arr[j]>=pivot)
j--;
if(i<j)
arr[i++] = arr[j];
while(i<j && arr[i]<=pivot)
i++;
if(i<j)
arr[j--] = arr[i];
}//endwhile
arr[i] = pivot;
// end function
var pivotpos = i; //Partition(arr,low,high);
QuickSort(arr, low, pivotpos-1);
QuickSort(arr, pivotpos+1, high);
} else
return;
return arr;
}
function InsertSort(arr) { //插入排序->直接插入法排序
var st = new Date();
var temp, j;
for(var i=1; i<arr.length; i++) {
if((arr[i]) < (arr[i-1])) {
temp = arr[i];
j = i-1;
do {
arr[j+1] = arr[j];
j--;
}
while (j>-1 && (temp) < (arr[j]));
arr[j+1] = temp;
}//endif
}
status = (new Date() - st) + ' ms';
return arr;
}排序2:
function BubbleSort(arr) { //交换排序->冒泡排序
var st = new Date();
var temp;
var exchange;
for(var i=0; i<arr.length; i++) {
exchange = false;
for(var j=arr.length-2; j>=i; j--) {
if((arr[j+1]) < (arr[j])) {
temp = arr[j+1];
arr[j+1] = arr[j];
arr[j] = temp;
exchange = true;
}
}
if(!exchange) break;
}
status = (new Date() - st) + ' ms';
return arr;
}
排序3:
function QuickSort(arr) { //交换排序->快速排序
if (arguments.length>1) {
var low = arguments[1];
var high = arguments[2];
} else {
var low = 0;
var high = arr.length-1;
}
if(low < high){
// function Partition
var i = low;
var j = high;
var pivot = arr[i];
while(i<j) {
while(i<j && arr[j]>=pivot)
j--;
if(i<j)
arr[i++] = arr[j];
while(i<j && arr[i]<=pivot)
i++;
if(i<j)
arr[j--] = arr[i];
}//endwhile
arr[i] = pivot;
// end function
var pivotpos = i; //Partition(arr,low,high);
QuickSort(arr, low, pivotpos-1);
QuickSort(arr, pivotpos+1, high);
} else
return;
return arr;
}
解决方案 »
- javax.el.PropertyNotFoundException: Property 'id' not found on type java.lang.St
- JAVASCRIPT如何获取打印完成的通知
- extjs2.0项目 现在想换到3.0的包 请问好换吗?
- javascript中通过路径怎么建立图片文件对象?
- 急求关于iframe的问题,在线等,
- 表格背景
- 腾讯游戏目录
- 对于table,鼠标点击某一行的时候,如何知道它点的是这个table的第几行第几列?通过event吗?
- 求教gitment的初始化报错,Error: Validation Failed
- jdk没写入本地接口
- 这个cookies怎么改写成javascript server 断的?
- 如果表单元素的名字里有个点, js怎么样找到它?
你们两个说的是单纯的排序,根本不是我要的。一个程序员还不会排序吗?
我要的是对于<table中的数据进行过滤显示,排序和不闪烁刷新的javascript代码。
具体的我也学艺不精。
<tr><td>发言人:王五</td><td>内容:ccccccccc</td><td>回复人:赵六</td><td>回复内容:ddddddddd</td></tr>
<tr><td>发言人:朱七</td><td>内容:eeeeeeeee</td><td>回复人:</td><td>回复内容:</td></tr>
<tr><td>发言人:马八</td><td>内容:fffffffff</td><td>回复人:</td><td>回复内容:</td></tr></table>
有回复滴
<div id=dv1></div>
我自己滴
<div id=dv2></div>
<script>
var me="朱七";
var t=document.getElementById("tt");
var s1="",s2="";
for(i=0;i<t.rows.length;i++)
{
if(t.rows[i].cells[2].innerHTML!="回复人:"){
s1+=t.rows[i].outerHTML;
}
if(t.rows[i].cells[0].innerHTML=="发言人:"+me)
s2+=t.rows[i].outerHTML;
}
dv1.innerHTML="<table>"+s1+"</table>";
dv2.innerHTML="<table>"+s2+"</table>";
</script>