json数据中的某一个字段进行快速排序

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Title</title>
 6 </head>
 7 <body>
 8
 9 </body>
10 </html>
11 <script type="text/javascript">
12     /***
13      * 快速排序 Quicksort
14      * 第一步 在数据集之中,选择一个元素作为“基准”。
15      * 第二步 所有小于"基准"的元素,都移到"基准"的左边;所有大于"基准"的元素,都移到"基准"的右边。
16      * 第三步 对"基准"左边和右边的两个子集,不断重复第一步和第二步,直到所有子集只剩下一个元素为止。
17      *
18      */
19     var arr_style = [
20         {name: ‘a‘, phone: 1, value: ‘val_4‘},
21         {name: ‘b‘, phone: 5, value: ‘val_3‘},
22         {name: ‘d‘, phone: 3, value: ‘val_2‘},
23         {name: ‘c‘, phone: 4, value: ‘val_1‘},
24         {name: ‘e‘, phone: 13, value: ‘val_5‘},
25         {name: ‘f‘, phone: 23, value: ‘val_6‘},
26         {name: ‘g‘, phone: 14, value: ‘val_7‘},
27         {name: ‘h‘, phone: 43, value: ‘val_8‘}
28     ];
29     var arr = [];
30     for(var a =0; a< arr_style.length; a++){
31         arr[a]= arr_style[a].phone;
32     }
33     var quicksort = function(arr){
34         if(arr.length <= 1){return arr;}
35         var pivotIndex = Math.floor(arr.length/2);
36         var pivot = arr.splice(pivotIndex, 1)[0];
37         var left = [];
38         var right = [];
39
40         for(var i = 0; i< arr.length; i++){
41             if(arr[i] < pivot){
42                 left.push(arr[i]);
43             }else{
44                 right.push(arr[i]);
45             }
46         }
47         return quicksort(left).concat([pivot], quicksort(right));
48     }
49     var result = quicksort(arr);
50     console.log(JSON.stringify(result));
51 </script>
时间: 2024-10-24 13:29:50

json数据中的某一个字段进行快速排序的相关文章

我的Android进阶之旅------&gt;解决Jackson、Gson解析Json数据时,Json数据中的Key为Java关键字时解析为null的问题

1.问题描述 首先,需要解析的Json数据类似于下面的格式: { ret: 0, msg: "normal return.", news: [ { id: "NEW2016062800875700", from: "腾讯新闻客户端", qqnews_download_url: "http://inews.qq.com/m?refer=openapi_for_xiaotiancai", articletype: "1&

用update和replace在sql中替换某一个字段的部分内容

用update和replace在sqlSever中替换某一个字段的部分内容 update users_settings set 替换字段 = replace(替换字段,' 原来内容' '新的内容') where `ConfigName`='accesslist' SQL报错"参数数据类型 text 对于 replace 函数的参数 1 无效" 对text或ntext类型的数据在查询中不能进行字符串操作.这时用得最多的是把text当作varchar(实际内容长度低于8000字节时)或把n

获取json数据中所有key集合

/** * 获取json数据中所有key */ function fetchResponseInfo(responseInfo){ //判断是否为空 if((!responseInfo || responseInfo.length <= 0)) { return; } //获取model var jsonCon = jQuery.parseJSON(responseInfo).model; if(!jsonCon){ return; } //获取所有key var keyArr; if(json

处理Json数据中的日期类型.如/Date(1415169703000)/格式

在asp.net mvc后台返回到视图中的json数据中想对数据进行操作,发现日期类型无法直接进行操作,需要转换为指定格式才行.在网上也搜了下方法也很多,觉得有点麻烦,最终使用正则搞定了,分享下: 1 var jsondate="/Date(1415169703000)/"; 2 var formatdate=eval(jsondate.replace(/\/Date\((\d+)\)\//gi, "new Date($1)")); 3 alert(formatda

C#调用接口返回json数据中含有双引号 或其他非法字符的解决办法

这几天,调用别人接口返回json数据含有特殊符号(双引号),当转换成json对象总是报错, json字符格式如下 { "BOXINFO":[ { "ITEM_ID":"100201709153277", "ITEM_NAME":"抗链球菌溶血素"O"(ASO)测定试剂盒(胶乳免)", "QTY":6, "NOTES":"厂牌(河北恒利集团

Json数据中同字段不同数据类型的解析

当解析Json数据时,如果碰到同字段不同数据类型的情况,如何处理呢?比如: [ { "code": 1, "data": 33 }, { "code": 2, "data": "string" }, { "code": 3, "data": { "age": 22, "name": "rc" } } ] 解析

Json数据中的特殊字符处理

今天在项目中遇到一个问题,页面上的数据突然显示不出来了,查验后得知是Json数据出现了问题.使用JSON从后台向前台传输数据的时候,当数据本身含有一些特殊字符,会导致JSON数据的解析出错.如果内容中本身就包含了 "\"" 双引号."\r\n" 回车换行这时候,数据的解析就会出现问题. \r,\n,\r\n的区别 ? 1 2 3 4 \n是换行,英文是New line,表示使光标到行首 \r是回车,英文是Carriage return,表示使光标下移一格

json数据中嵌套 ”(双引号) 导致格式报错的问题,处理方式

先看数据格式: 可以看到,在value中有双引号.主要对应的key是position 和interests两个部分. 发现position 是单个字符串格式. interests是对应的json数组的格式.所以分两步解决. 1.解决position对应的问题. String str=""; str中是有问题的json数据 String newstr=""; String flag1="\"position\":\""

javascript通过json数据按格式生成一个按字母分类排序的分类信息表

效果图如下 1.json数据格式 var _people=[{name:'朱瑞',url:'aaaaaa',nick:'zhu'},{name:'刘桂清',url:'aaaaa',nick:'liu'}];这里按姓氏排序借用了nick,不用nick的话,需要加载一个汉字拼音对照数组,判断匹配 2.javascript代码 1 (function ($){ 2 function SortByGroup(arr,option){ 3 this.option=option; 4 this.arr=ar