TC官方合作论坛

标题: 数字的排序问题 [打印本页]

作者: jue007    时间: 2016-3-20 09:43
标题: 数字的排序问题
请问如果能把数字按要求排序出来!例如、、12232排出来的是22231又例如12235排出来的是22531

作者: 言术    时间: 2016-3-20 11:52

功能 数字排序(要排序的,提取数字)
    变量 排序数组=数组()
    变量 提取的数字,剩下的数字,临时存储
    变量 大小=0,长度=字符串长度(要排序的)
    遍历(变量 i = 0; i < 长度; i++)
        临时存储=字符串截取(要排序的,i,i+1)
        如果(临时存储==提取数字)
            提取的数字=提取的数字&临时存储
        否则
            排序数组[大小]=临时存储
            大小++
        结束
    结束
   
    遍历(变量 i = 0; i < 大小-1; i++)
        遍历(变量 j = i+1; j < 大小; j++)
            如果(排序数组[i]<排序数组[j])
                临时存储=排序数组[i]
                排序数组[i]=排序数组[j]
                排序数组[j]=临时存储
            结束
        结束
    结束
    临时存储=""
    遍历(变量 i = 0; i < 大小; i++)
        临时存储=临时存储&排序数组[i]
    结束
   
    返回 提取的数字&临时存储
结束
作者: jue007    时间: 2016-3-20 12:07
言术 发表于 2016-3-20 11:52
功能 数字排序(要排序的,提取数字)
    变量 排序数组=数组()
    变量 提取的数字,剩下的数字,临时存储

非常感谢!我想了解的是!重叠的数字优先排在前面(按照多到少)
作者: 言术    时间: 2016-3-20 14:22

功能 重复数字排序(要排序的)
    变量 返回值,临时,临时数组=数组(0,0,0,0,0,0,0,0,0,0)
    变量 长度=字符串长度(要排序的)
    遍历(变量 i = 0; i < 长度; i++)
        临时=字符串截取(要排序的,i,i+1)
        临时数组[临时]++
    结束
   
    变量 最大值,下标
    循环(最大值!=0)
        最大值=0
        遍历(变量 i = 0; i < 10; i++)
            如果(最大值<临时数组[i])
                最大值=临时数组[i]
                下标=i
            结束
        结束
        
        遍历(变量 i = 0; i < 最大值; i++)
            返回值=返回值&下标
        结束
        临时数组[下标]=0
    结束
    返回 返回值
结束




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1