整型数组按个位值排序
题目
给定一个非空数组(列表),其元素数据类型为整型,请按照数组元素十进制最低位从小到大进行排序,十进制最低位相同的元素,相对位置保持不变。
当数组元素为负值时,十进制最低位等同于去除符号位后对应十进制值最低位。
输入描述:
给定一个非空数组,其元素数据类型为32位有符号整数,数组长度[1, 1000]
输出描述:
输出排序后的数组
示例1
输入
1,2,5,-21,22,11,55,-101,42,8,7,32
输出
1,-21,11,-101,2,22,42,32,5,55,7,8
解题思路
- 首先定义一个solve方法,该方法参数为一个由逗号分隔的字符串数组,返回值为空,用于求解题目要求。
- 在solve方法中定义一个Map类型的myHashMap集合,表示以个位数为key,同个位数的元素为value的映射表,用于存储原数组中的元素。
- 使用for循环遍历输入的values数组,对每个元素进行以下操作: 1)获取其绝对值并取余10得到个位数; 2)根据个位数在myHashMap中查找对应的List列表,如果不存在则新建一个空列表; 3)将当前元素添加到所属列表中; 4)将列表添加回myHashMap中。
<