$inputs = [
[
'province' => '山东',
'city' => '济南',
'vally' => '天桥区',
],
[
'province' => '湖北',
'city' => '武汉',
'vally' => '江岸区',
],
[
'province' => '山东',
'city' => '济南',
'vally' => '高新区',
],
[
'province' => '湖南',
'city' => '长沙',
'vally' => '芙蓉区',
],
[
'province' => '浙江',
'city' => '杭州',
'vally' => '大湖',
],
[
'province' => '山东',
'city' => '济南',
'vally' => '长清区',
],
[
'province' => '浙江',
'city' => '杭州',
'vally' => '高新区',
],
[
'province' => '山东',
'city' => '青岛',
'vally' => '黄岛区',
],
];
目录
一、题目描述
对包含省市区的数组对象,按相同名称排在一起的升序方式,排列整个数组。
PHP版输入
JS版输入
二、解题思路
一般的解法是在排序时对省市区的每一项都进行一次比较,这样需要比较三次才能完成。如何只需要一次比较就能完成呢 ?
通过把省市区拼接为一个key的方式,整个题目就被转化为了 字符串的 一维排序
三、最优解法
1、PHP版
2、JS版