[发明专利]一种基于JavaScript与Unicode的字符排序方法、系统及装置在审
申请号: | 202111160214.1 | 申请日: | 2021-09-30 |
公开(公告)号: | CN113887172A | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 郝长征;李尊状;游鑫;崔凤 | 申请(专利权)人: | 中孚信息股份有限公司 |
主分类号: | G06F40/129 | 分类号: | G06F40/129 |
代理公司: | 济南舜源专利事务所有限公司 37205 | 代理人: | 赵阳 |
地址: | 250101 山东省济南市高新*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 javascript unicode 字符 排序 方法 系统 装置 | ||
本发明提出的一种基于JavaScript与Unicode的字符排序方法、系统及装置,所述包括:在JavaScript平台中创建一个排序规则函数,记为compare函数;在待排序的数组中提取相邻的两个元素,记为参数a和b;将参数a和b输入compare函数中;判断a与b是否相等,若相等则compare函数直接返回1;若不相等,进一步判断a是否有值,若a没有值,则compare函数直接返回1;若a有值,则判断b是否有值,若b没有值,则compare函数直接返回‑1;若b有值,则使用预设的Unicode对比方法函数对a和b进行比较;compare函数根据比较结果生成返回值;根据返回值采用sort方法对待排序的数组进行对比排序。本发明能够有效提升复杂业务场景下,js处理字符串排序的整体性能。
技术领域
本发明涉及字符数据处理技术领域,更具体的说是涉及一种基于JavaScript与Unicode的字符排序方法、系统及装置。
背景技术
排序算法,即通过特定的算法因式将一组或多组数据按照既定模式进行重新排序。这种新序列遵循着一定的规则,体现出一定的规律,因此,经处理后的数据便于筛选和计算,大大提高了计算效率。对于排序,最基本的要求是要具有一定的稳定性,即当两个相同的元素同时出现于某个序列之中,则经过一定的排序算法之后,两者在排序前后的相对位置不发生变化。换言之,即便是两个完全相同的元素,它们在排序过程中也是各有区别的,不允许混淆不清。
当前,在JavaScript平台中排序常用方案有冒泡排序、选择排序、插入排序和sort方法。其中,冒泡排序的缺点是速度慢,运行时复杂度为O(n2),无法满足大型数组排序的需求;选择排序就是一个不稳定的排序算法,且执行对比次数过多,容易造成没必要的性能浪费;插入排序类似于对扑克牌的插入,一旦遇到数量级很大的排序,运行次数会呈几何级数增长;sort方法是通过浏览器引擎进行解析的方法,总会以第一个字符的ASCII值来进行比较排序,而且方法默认把所有元素先转换为String再排序,直接使用会产生诸多问题。
可见,如何针对大量需要排序字符串的使用场景实现字符串快速合理的排序是我们亟待解决的问题。
发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种基于JavaScript与Unicode的字符排序方法、系统及装置,能够有效提升复杂业务场景下,js处理字符串排序的整体性能,在规避掉js本身sort函数的弊端的同时,采用定位Unicode数值的方式对不同语言的字符串进行合理的规划与排序。
本发明为实现上述目的,通过以下技术方案实现:
一种基于JavaScript与Unicode的字符排序方法,包括:
在JavaScript平台中创建一个排序规则函数,记为compare函数;
在待排序的数组中提取相邻的两个元素,记为参数a和b;
将参数a和b输入compare函数中;
判断a与b是否相等,若相等则compare函数直接返回1;
若不相等,进一步判断a是否有值,若a没有值,则compare函数直接返回1;
若a有值,则判断b是否有值,若b没有值,则compare函数直接返回-1;
若b有值,则使用预设的Unicode对比方法函数对a和b进行比较;
compare函数根据比较结果生成返回值;
根据返回值采用sort方法对待排序的数组进行对比排序。
进一步,所述使用预设的Unicode对比方法函数对a和b进行比较包括:
将参数a和b转换为相应的Unicode编码;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中孚信息股份有限公司,未经中孚信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111160214.1/2.html,转载请声明来源钻瓜专利网。