zoukankan      html  css  js  c++  java
  • sort 及排序函数1

    <script>
    function SortNumber(obj,func) //定义通用排序函数
    {
    //参数验证,如果第一个参数不是数组或第二个参数不是函数则抛出异常
    if(!(obj instanceof Array) || !(func instanceof Function))
    {
    var e = new Error(); //生成错误信息
    e.number = 100000; //定义错误号
    e.message = "参数无效"; //错误描述
    throw e; //抛出异常
    }
    for(n in obj) //开始排序
    {
    for(m in obj)
    {
    if(func( obj[n],obj[m]) ) //使用回调函数排序,规则由用户设定
    {
    var tmp = obj[n]; //创建临时变量
    obj[n] = obj[m]; //交换数据
    obj[m] = tmp;
    }
    }
    }
    return obj; //返回排序后的数组
    }
    function greatThan(arg1,arg2) //回调函数,用户定义的排序规则
    {
    return arg1 < arg2;
    }
    try
    {
    var numAry = new Array(5,8,6,32,1,45,6,89,9); //生成一数组
    document.write("<li>排序前:"+numAry); //输出排序前的数组
    SortNumber(numAry,greatThan); //调用排序函数
    document.write("<li>排序后:"+numAry); //输出排序后的数组
    }
    catch(e)
    {
    alert(e.number+":"+e.message);
    }
    </script>
  • 相关阅读:
    并查集
    归并排序
    树的操作
    活动安排
    动态规划-股票交易
    网络流
    linux 展开
    linux 反引号、单引号、双引号
    linux 命令行快捷键
    判断一个点是否在三角形内部和边界上
  • 原文地址:https://www.cnblogs.com/rswl/p/8134363.html
Copyright © 2011-2022 走看看