转换成浮点数,然后再排序。封装一个类,做个浮点和字符串的对应关系就可以了。这样比较简单。
还有一个办法就是补0
string.Format("{0:0000000:00000000}", "1.23")
这样就把整数和小数部分补0 了,然后直接按字符串比较。
确定只有三位?做几层循环,分别分每个字符串给每一个字符串比较“最后一位”,并进行排序。
写一个普通数据的排序算法,然后在 if(a>b){换位置} 的条件判断部分增加判断你的数组类型大小的逻辑。
if(逻辑(a,b)){
换位置
}
逻辑(string a,string b){ 转换类型 、比较大小}
思路如此,不是很困难。
去掉所有的“ .” 号,直接按照整数比较,排序再输出
如上面所说,去掉小数点变成整数,再进行排序。之后有几种方法
1.利用数据库,循环参数 数组,在库表里存成两列,一列是原数字字符串,一列是去掉 . 的int型。
然后 select 字符串 form 表 order by 数值型字段;取出存入新数组
2.把字符串,数值 对放到 dataset 里,用dataset排序,读取
3.完全写程序罗辑算法了