日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

按阅读习惯来高效排列字符串的脚本

發布時間:2025/6/15 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 按阅读习惯来高效排列字符串的脚本 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ?對于字符串的排序,我們知道是比較相同index位置的字符的值來進行的。這樣的排序有個問題,就是當被排序的字符串的內容是有數字順序的,而且還不等長就比較的郁悶了。我們在xp以前的操作系統的資源管理器里,就會常常看到這樣的文件名序列:

??? x1, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19,x2,?x20, x21, x22...

??? 而我們的閱讀習慣因該是這樣的:

??? x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17...

??? 如果是排列數字,按這種閱讀習慣是理所當然的事情。可是對于字符串似乎就變得有些麻煩了,對于JScript腳本,系統提供了Array.sort()方法,可以高效的排列字符串。可是美中不足的是這個方法排序后的結果就是上面的第一種情況,完全不符合我們的閱讀習慣:(。

??? 于是我們考慮使用分段排序的方式解決這個問題,代碼如下:

function?SortStringArray(ary)
{
????var?args?=?[];
????var?len?=?0?;
????for?(?var?i?=?0?;?i?<?ary.length?;?++?i?)
????{
????????len?=?ary[i].length;
????????//?len?=?new?String(i).valueOf().length;
????????if?(?!?args[len]?)
????????{
????????????args[len]?=?[];
????????}
????????args[len].push(ary[i]);
????}
????var?sortedArray?=?[];
????for?(?var?j?=?0?;?j?<=?args.length?;?++?j?)
????{
????????if?(?args[j]?)
????????{
????????????args[j].sort();
????????????sortedArray?=?sortedArray.concat(args[j]);
????????}
????}
????return?sortedArray;
}

??? 由于使用了Array.sort()方法,排序效率非常高。10,000個字符串節點按閱讀習慣排序所花的時間是281ms! 測試代碼如下:

var?ary?=?[];
var?count?=?10000?;
for?(?var?i?=?0?;?i?<?count?;?++i?)
{
????var?item?=?'xxxxxxxxx'?+?(count-i);
????ary.push(item);
}
ary.sort();
dtBegin?=?new?Date();
ary?=?SortStringArray(ary);
alert(new?Date()-dtBegin);?


??? 后話:如果我們已知被排序的字符串是數字順序的,那么用我們的SortStringArray()排序就行了,但是要去識別那些字符串是可以按數字順序排列的,我想了想好像還很困難。看看下面這個xp的資源管理器的示例就清楚了:
????
??? 紅框里的文件的文件名就是沒有數字順序的,而xp的資源管理器就按普通的字符排序規則將其排序了。當然幾十個百來個條目要判斷出來還是很容易的,可是如果是好幾千上萬的條目,要找出有數字順序的條目就比較的郁悶了。


本文轉自博客園鳥食軒的博客,原文鏈接:http://www.cnblogs.com/birdshome/,如需轉載請自行聯系原博主。

總結

以上是生活随笔為你收集整理的按阅读习惯来高效排列字符串的脚本的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 夜夜嗨av一区二区 | 国产丝袜美腿一区二区三区 | 国家队动漫免费观看在线观看晨光 | 91久久综合| 久久久久久免费观看 | 无码人妻精品丰满熟人区 | 吃瓜网今日吃瓜 热门大瓜 色婷在线 | 亚洲天堂网络 | 日韩免费不卡视频 | 成人福利小视频 | 国产亚洲欧美精品久久久久久 | 91精品国产91久久久久青草 | 久艹在线观看视频 | 中文字幕网伦射乱中文 | 夜夜春夜夜爽 | 人妻色综合网站 | 亚洲免费视频网 | 久久久嫩草 | 婷婷色影院 | 德国性经典xxxx性hd | 可以在线观看av的网站 | 一级特黄av | 美女脱了裤子让男人桶 | 国产精品国产三级国产aⅴ下载 | 国产日本在线播放 | 漂亮人妻洗澡被公强 日日躁 | 松本一香在线播放 | 日本在线视频观看 | 欧美日韩三级视频 | 久久精品国产亚洲av蜜臀色欲 | free性欧美hd精品4k | 免费av小说 | 亚洲最大综合网 | 亚洲视频免费在线观看 | 亚洲影视一区二区三区 | 99国产精品久久久久99打野战 | 欧美精品成人久久 | 日本体内she精高潮 男女视频在线免费观看 | 毛片无码一区二区三区a片视频 | 国产精品亚洲а∨天堂免在线 | 天天插天天爱 | 裸体美女免费视频网站 | 嫩草免费视频 | 日韩欧美亚洲成人 | 在线观看av的网址 | 加勒比一区在线 | 影音先锋毛片 | 色七七桃花综合影院 | √天堂8资源中文在线 | 亚洲一二三四在线观看 | 国产av无码专区亚洲av毛片搜 | 欧美嫩草影院 | 午夜免费观看视频 | www.婷婷.com| 操亚洲女人 | 成人欧美日韩 | 好吊操这里有精品 | 精品久久久久久国产 | 亚洲视频欧洲视频 | 日韩亚洲欧美精品 | 日本一区二区精品视频 | 天天干天天做天天操 | 在线免费看av网站 | 日韩欧美123 | 成人免费午夜 | 女人做爰全过程免费观看美女 | 亚洲va中文字幕 | 伊人久久大香线蕉av色婷婷色 | 三级色视频| 日本熟妇一区二区三区四区 | 蜜臀网在线 | 欧美 亚洲 另类 激情 另类 | 亚洲精选中文字幕 | 国产男人天堂 | 最近中文字幕在线中文高清版 | 中文字幕在线观看一区二区 | 成人无码久久久久毛片 | 九九视频国产 | www.操 | 一本到视频 | 亚洲综合涩| www.色婷婷 | 特级黄毛片| 色欲色香天天天综合网www | 无码精品一区二区三区在线播放 | 快播色图| 欧洲毛片 | 精人妻无码一区二区三区 | 亚洲成人一区二区在线观看 | 人妻少妇偷人精品视频 | 亚洲国产精品suv | 青青草成人影视 | 99久热| 波多野结衣大片 | 亚洲永久在线观看 | 九九视频在线免费观看 | 国产欧美一区二区三区视频在线观看 | 欧洲激情网 | 殴美黄色大片 |