`

js 版排序查找

 
阅读更多

查找排序[ 折半查找 ,插入排序]

 

======================

function searchSeat(srcArr, tag) {
    var m = 0;
    var n = srcArr.length - 1;
    if (n < 1) {
        if (n == -1 || tag <= srcArr[0]) {
            return 0;
        } else {
            return 1;
        }
    } else {
        if (tag <= srcArr[0]) {
            return 0;
        } else if (tag >= srcArr[srcArr.length - 1]) {
            return srcArr.length
        } else {
            while (m <= n) {
                var mid = parseInt((m + n) / 2);
                if (tag <= srcArr[mid] && tag >= srcArr[mid - 1]) {
                    return mid;
                } else if (tag >= srcArr[mid] && tag <= srcArr[mid + 1]) {
                    return mid + 1;
                } else if (tag < srcArr[mid]) {
                    n = mid - 1;
                } else if (tag > srcArr[mid]) {
                    m = mid + 1;
                } else {
                    return -110;
                }
            }
        }
    }
    return -200;
}

function sortFloat(arr) {
    var l = arr.length;
    var brr = [arr[0]];
    for (var i = 1; i < l; i++) {
        var seat = searchSeat(brr, arr[i]);
        brr.splice(seat, 0, arr[i]);
    }
    return brr;
}

 

a=[]
for(i=1;i<100000;i++){a.push(parseInt(Math.random()*10000))}

console.log((new Date).getTime());
sortFloat(a);
console.log((new Date).getTime());

console.log((new Date).getTime());
sort(a);
console.log((new Date).getTime());

 

======================

 

分享到:
评论

相关推荐

    算法实践JS实现排序查找树两指针动态规划等

    这个压缩包"Algo-Practice-master"显然包含了与JavaScript编程语言相关的算法实践资源,包括排序、查找、树结构、两指针技术和动态规划等关键概念。这些知识点在解决复杂问题、优化代码性能以及设计高效算法时起着至...

    JS控制分类排序

    在网页开发中,JavaScript(JS)是一种至关重要的脚本语言,它允许我们实现动态交互效果,包括对数据的处理和展示。"JS控制分类排序"是网页开发中的一个常见需求,尤其是在处理大量的数据集合时,比如商品目录、文章...

    结构体排序查找以及链表的使用

    学习结构体排序查找以及链表的使用#include #include #include struct student { int num; double score; char name[100]; struct student *next; }; int cmp(const void *a,const void *b) { struct student *...

    算法实践(JavaScript & Java),排序,查找、树、两指针、动态规划等

    本资源包"算法实践(JavaScript & Java),排序,查找、树、两指针、动态规划等"涵盖了编程中的多个重要概念,旨在帮助开发者提升算法设计与实现能力。接下来,我们将详细探讨这些知识点。 1. **动态规划**: 动态...

    表格排序

    `tablesort.js` 是一个用于表格排序的JavaScript库,而 `jquery-1.9.0.min.js` 是jQuery的轻量级版本,它是一个广泛使用的JavaScript库,提供了更简单、更高效的DOM操作、事件处理和动画功能。 首先,我们要理解...

    js学习案例实现一个完整的表格排序

    这个"js学习案例实现一个完整的表格排序"旨在帮助开发者理解和掌握如何使用纯JavaScript实现对HTML表格的数据进行动态排序。在这个项目中,我们将探讨以下关键知识点: 1. **HTML表格基础**:首先,了解HTML中的`...

    [转] JS 排序(包括按中文拼音排序) Google到的好东西,收藏!

    " 提供了一些关于JavaScript排序的实用技巧,包括如何对中文字符串按照拼音进行排序。在JavaScript的Array对象中,有一个内置方法`sort()`,它允许我们对数组进行排序,但默认排序规则是基于Unicode编码,对于中文...

    Javascript实现网页元素拖拽排序

    在网页开发中,JavaScript是一种非常重要的脚本语言,它提供了丰富的功能,其中之一就是实现网页元素的拖拽排序。拖拽排序允许用户通过直观地拖动元素来改变它们在页面上的顺序,增强了用户体验。本文将深入探讨如何...

    通过实例解析JavaScript常用排序算法

    - 优化版冒泡排序可以记录上一次交换的位置,避免对已排序的部分进行不必要的比较。 2. **快速排序**: 快速排序是一种高效的排序算法,由C.A.R. Hoare提出。其核心思想是“分而治之”: - 选择一个基准元素,将...

    JS常用的数据结构和算法,链表、栈、队列、排序和查找:octocat

    在这个主题下,我们将深入探讨四种基本的数据结构——链表、栈、队列以及基础的排序和查找算法。这些概念不仅在日常开发中广泛应用,也是面试中常被考察的知识点。 **链表** 链表是一种线性数据结构,与数组不同,...

    基于jquery的表格筛选,排序,分页js

    表格筛选功能允许用户通过输入关键词快速查找表格中的特定数据。在jQuery中,可以使用`.filter()`方法配合文本匹配来实现。首先,获取到表格的行元素,然后根据用户输入的关键词过滤行,最后将匹配的行显示出来,...

    排序方法总结(包括快速排序,堆排序,归并排序)

    - **折半插入排序**:在直接插入排序的基础上,利用二分查找来确定插入位置,可以减少比较次数,提高效率,但时间复杂度仍然为O(n^2)。 - **希尔排序**:是插入排序的一种优化版本,通过设置间隔序列(Gap)来分组...

    JavaScript字母、汉字混合的拼音排序列表框

    在JavaScript编程中,处理汉字和字母混合的数据时,我们经常需要对这些数据进行排序,特别是在构建下拉列表框或者搜索过滤功能时。标题中的“JavaScript字母、汉字混合的拼音排序列表框”指的是一个技术实现,它允许...

    js表格排序,数据区别色彩

    在JavaScript(js)编程中,表格排序和数据区别色彩是两个关键的概念,它们常用于增强网页数据的可读性和交互性。在这个例子中,我们看到一个项目利用了外部JavaScript文件`sortTable.js`来实现表格的动态排序,同时...

    JS实现二分插入排序,前端必会

    二分插入排序是一种在计算机科学中用于对数组或列表进行排序的算法,它结合了二分查找和插入排序的优点。在前端开发中,理解和掌握这种排序算法对于优化数据处理和提高程序性能至关重要。以下是关于JS实现二分插入...

    jssort:JavaScript排序方法,将按给定数组中对象的多个字段进行排序

    jsSort v0.0.5 jsSort是一种通用的排序方法,可以通过多个属性对对象数组进行排序。概述jsSort的公共API归结为一个名为sortByMultiple的方法。 此方法采用两个参数,每个参数都是数组。 sequence :要排序的数组。 ...

    表格拼音列排序

    在JS排序中,我们可以编写函数来转换汉字为拼音,然后基于这些拼音进行排序。一种常见的方法是使用第三方库,如pinyin.js或zhon.js,这些库提供了汉字转拼音的接口。以下是一个简单的JavaScript示例: ```...

    排序方法效率比较C++&飞机订票系统Web

    在这个个人项目中,我们将深入探讨这两个知识点,并结合C++语言来研究不同排序算法的性能,同时也会讨论构建一个Web版的飞机订票系统的关键技术和设计考虑。 首先,让我们关注排序方法的效率。排序是计算机科学中的...

    js基本算法:冒泡排序,二分查找的简单实例

    本文主要介绍了JavaScript中两种基础但非常重要的算法:冒泡排序和二分查找。这两种算法是计算机科学中解决问题的基础工具,对于理解和优化代码性能至关重要。 首先,我们来看冒泡排序。冒泡排序是一种简单的排序...

Global site tag (gtag.js) - Google Analytics