[PHP]算法-拼接最小字典序的实现
2023-02-18 15:47:21 时间
拼接最小字典序: 给定一个字符串类型的数组strs,请找到一种拼接顺序,使得将所有字符串拼接起来组成的大字符串是所有可能性中字典顺序最小的并放回这个大字符串。 思路: 1.字典序,12345这五个数,按不同的顺序排列,所有的排列中最前面的是12345,最后面的是 54321。 2.使用比较函数usort(arr,'costomcomp'),自定义比较大小的函数,costomcomp(a,b) return a+b > b+a 3.str_split 单个字符串转数组 4.字符转ascii ord()
<?php function customComp($a,$b){ $a=ord($a); $b=ord($b); $res=$a > $b; var_dump($res); return $res; } //自定义排序 function dictSort($strs) { $strs=str_split($strs); usort($strs,'customComp'); return implode("",$strs); } $arr="cdab"; $result=dictSort($arr); var_dump($result);
相关文章
- oracle学习笔记(十五) PL/SQL语法结构以及使用
- 谈安全测试的重要性
- oracle学习笔记(十四) 数据库对象 索引 视图 序列 同义词
- 利用京东云Web应用防火墙实现Web入侵防护
- oracle学习笔记(十三) 查询练习(三) 子查询查询
- oracle学习笔记(十二) 查询练习(二) 高级查询
- 从系统架构分析安全问题及应对措施
- oracle学习笔记(十一) 高级查询
- oracle学习笔记(十) 查询练习(一)
- 大促活动如何抵御大流量 DDoS 攻击?
- 如何守护数据安全? 这里有一份RDS灾备方案为你支招
- oracle学习笔记(九) SQL常用函数说明以及使用
- 在线数据迁移,数字化时代的必修课 —— 京东云数据迁移实践
- 一次较波折的MySQL调优
- oracle学习笔记(八)——结果集元数据ResultSetMetaData以及ResultSet转为对应的实体类框架
- 杂牌机搞机之旅最终章————刷入Xposed框架
- 记录一次数据库CPU被打满的排查过程
- oracle学习笔记(七) 预编译Statement介绍与使用
- 京东云PostgreSQL在GIS场景的应用分享
- ClickHouse与Elasticsearch压测实践