排序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;
 }

解决方案 »

  1.   

    http://www.blueidea.com/tech/program/2004/2344.asp
      

  2.   

    to:lawyu(雨淋漓) & oncsdn(青蛙) 
    你们两个说的是单纯的排序,根本不是我要的。一个程序员还不会排序吗?
    我要的是对于<table中的数据进行过滤显示,排序和不闪烁刷新的javascript代码。
      

  3.   

    个人认为过滤是这样的,先把表格数据转化成xml,在利用xsl来控制。
    具体的我也学艺不精。
      

  4.   

    <table id=tt><tr><td>发言人:张三</td><td>内容:aaaaaaaaa</td><td>回复人:李四</td><td>回复内容:bbbbbbbbb</td></tr>
    <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>