精易论坛
标题: 数组按从到小排序怎么写 [打印本页]
作者: kv2005w 时间: 2022-10-15 09:05
标题: 数组按从到小排序怎么写
.版本 2
.局部变量 数组, 文本型, , "0"
数组 = { “科技”, “1”, “数字”, “电子”, “9”, “数字”, “飞拓”, “3”, “数字”, “信息”, “4”, “数字”, “传播”, “6”, “数字”, “信息11”, “2”, “数字”, “集团”, “5”, “数字”, “天地”, “7”, “数字”, “科技”, “2”, “增长”, “建源”, “1”, “增长”, “国科”, “3”, “教育”, “博传”, “2”, “教育”, “澳康”, “1”, “教育”, “澳洋”, “1”, “民营”, “天地”, “1”, “防治” }
重定义数组 (数组, 真, 取数组成员数 (数组) ÷ 3, 3)
二维数组已准备好
求教 如下图,一个二维数组, 按 类型相同的,数量从小到大排序,这怎么写。
排序的数组
补充内容 (2022-10-15 09:51):
哪个大哥,能给个源码, 类型顺序是不变 数量 从小到大
作者: Suky 时间: 2022-10-15 09:05
变量名 | 类 型 | 静态 | 数组 | 备 注 |
排序数量 | 整数型 | | |
数组 | 文本型 | | 0 |
n | 整数型 | | |
i | 整数型 | | |
数组 =
{ “科技”,
“1”,
“数字”,
“电子”,
“9”,
“数字”,
“飞拓”,
“3”,
“数字”,
“信息”,
“4”,
“数字”,
“传播”,
“6”,
“数字”,
“信息11”,
“2”,
“数字”,
“集团”,
“5”,
“数字”,
“天地”,
“7”,
“数字”,
“科技”,
“2”,
“增长”,
“建源”,
“1”,
“增长”,
“国科”,
“3”,
“教育”,
“博传”,
“2”,
“教育”,
“澳康”,
“1”,
“教育”,
“澳洋”,
“1”,
“民营”,
“天地”,
“1”,
“防治” }排序数量 =
取数组成员数 (数组
) ÷ 3
重定义数组 (数组, 真, 排序数量, 3
)调试输出 (数组
)
计次循环首 (排序数量, n
)
计次循环首 (排序数量 - n, i
)

如果真 (数组
[i
] [3
] = 数组
[i + 1
] [3
])


如果真 (数组
[i
] [2
] > 数组
[i + 1
] [2
])


交换变量 (数组
[i
] [1
], 数组
[i + 1
] [1
])


交换变量 (数组
[i
] [2
], 数组
[i + 1
] [2
])


交换变量 (数组
[i
] [3
], 数组
[i + 1
] [3
])







计次循环尾 ()
计次循环尾 ()调试输出 (数组
)
看你的意思 大概是这样的
补充内容 (2022-10-15 10:04):
类型位置不变,只是同类型的按数字大小排序,那就是这样子没错了,直接略掉对类型的排序即可
补充内容 (2022-10-15 10:23):
因为类型相同,所以其实类型那一维可以不进行交换变量操作的,也就是说 交换变量 (数组 [3], 数组 [i + 1] [3]) 这行可以删掉
作者: xbwdl 时间: 2022-10-15 09:13
11.7.2_自定义数据类型数组排序.zip
(4.02 KB, 下载次数: 12)
作者: Suky 时间: 2022-10-15 09:25
这种用自定义数据类型排序后再重新丢回去数组其实能更容易处理一些
直接用多维数组排序的话 需要点时间整理一下
作者: |﹎℡若即 时间: 2022-10-15 09:38
变量名 | 类 型 | 静态 | 数组 | 备 注 |
数组 | 文本型 | | 45 |
数组_ | 文本型 | | 0 |
i | 整数型 | | |
ii | 整数型 | | |
数组 =
{ “科技”,
“1”,
“数字”,
“电子”,
“9”,
“数字”,
“飞拓”,
“3”,
“数字”,
“信息”,
“4”,
“数字”,
“传播”,
“6”,
“数字”,
“信息11”,
“2”,
“数字”,
“集团”,
“5”,
“数字”,
“天地”,
“7”,
“数字”,
“科技”,
“2”,
“增长”,
“建源”,
“1”,
“增长”,
“国科”,
“3”,
“教育”,
“博传”,
“2”,
“教育”,
“澳康”,
“1”,
“教育”,
“澳洋”,
“1”,
“民营”,
“天地”,
“1”,
“防治” }
计次循环首 (取数组成员数 (数组
) ÷ 3, i
)
ii
= (i - 1
) × 3
加入成员 (数组_, 数组
[ii + 3
] +
“|” + 数组
[ii + 2
] +
“|” + 数组
[ii + 1
])
计次循环尾 ()数组_排序 (数组_, 0,
)调试输出 (数组_
)
最后把结果循环分割文本,应该就能用了
作者: kv2005w 时间: 2022-10-15 09:47
都不行,最好不要自定义数据,转来转去太麻烦了
作者: kv2005w 时间: 2022-10-15 09:50
你这也不行,完全反了, 数字 类型要在前的,你这方法 到最后去了。就是 类型要不变的,只的 数量 排大小
作者: Suky 时间: 2022-10-15 09:51
变量名 | 类 型 | 静态 | 数组 | 备 注 |
排序数量 | 整数型 | | |
数组 | 文本型 | | 0 |
数组2 | 文本型 | | 0 |
n | 整数型 | | |
i | 整数型 | | |
数组 =
{ “科技”,
“1”,
“数字”,
“电子”,
“9”,
“数字”,
“飞拓”,
“3”,
“数字”,
“信息”,
“4”,
“数字”,
“传播”,
“6”,
“数字”,
“信息11”,
“2”,
“数字”,
“集团”,
“5”,
“数字”,
“天地”,
“7”,
“数字”,
“科技”,
“2”,
“增长”,
“建源”,
“1”,
“增长”,
“国科”,
“3”,
“教育”,
“博传”,
“2”,
“教育”,
“澳康”,
“1”,
“教育”,
“澳洋”,
“1”,
“民营”,
“天地”,
“1”,
“防治” }排序数量 =
取数组成员数 (数组
) ÷ 3
重定义数组 (数组, 真, 排序数量, 3
)调试输出 (数组
)
计次循环首 (排序数量, n
)
计次循环首 (排序数量 - n, i
)

如果真 (数组
[i
] [3
] > 数组
[i + 1
] [3
])

交换变量 (数组
[i
] [1
], 数组
[i + 1
] [1
])

交换变量 (数组
[i
] [2
], 数组
[i + 1
] [2
])

交换变量 (数组
[i
] [3
], 数组
[i + 1
] [3
])



计次循环尾 ()
计次循环尾 ()调试输出 (数组
)
计次循环首 (排序数量, n
)
计次循环首 (排序数量 - n, i
)

如果真 (数组
[i
] [3
] = 数组
[i + 1
] [3
])


如果真 (数组
[i
] [2
] > 数组
[i + 1
] [2
])


交换变量 (数组
[i
] [1
], 数组
[i + 1
] [1
])


交换变量 (数组
[i
] [2
], 数组
[i + 1
] [2
])


交换变量 (数组
[i
] [3
], 数组
[i + 1
] [3
])







计次循环尾 ()
计次循环尾 ()调试输出 (数组
)
看看这个 好玩不
补充内容 (2022-10-15 09:57):
如果你的文本组里 相同类型的都挨在一起,那直接把第一个双层循环删掉即可
作者: |﹎℡若即 时间: 2022-10-15 09:58
变量名 | 类 型 | 静态 | 数组 | 备 注 |
数组 | 文本型 | | 45 |
数组_ | 文本型 | | 0 |
数组_2 | 文本型 | | 0 |
i | 整数型 | | |
ii | 整数型 | | |
iii | 整数型 | | |
上一个类型 | 文本型 | | |
类型 | 文本型 | | |
fg | 文本型 | | 0 |
数组 =
{ “科技”,
“1”,
“数字”,
“电子”,
“9”,
“数字”,
“飞拓”,
“3”,
“数字”,
“信息”,
“4”,
“数字”,
“传播”,
“6”,
“数字”,
“信息11”,
“2”,
“数字”,
“集团”,
“5”,
“数字”,
“天地”,
“7”,
“数字”,
“科技”,
“2”,
“增长”,
“建源”,
“1”,
“增长”,
“国科”,
“3”,
“教育”,
“博传”,
“2”,
“教育”,
“澳康”,
“1”,
“教育”,
“澳洋”,
“1”,
“民营”,
“天地”,
“1”,
“防治” }
计次循环首 (取数组成员数 (数组
) ÷ 3, i
)
ii
= (i - 1
) × 3

类型 = 数组
[ii + 3
]
如果真 (类型 ≠ 上一个类型
)
数组_排序 (数组_, 0,
)

计次循环首 (取数组成员数 (数组_
), iii
)


fg =
分割文本 (数组_
[iii
],
“|”,
)


数组_
[iii
] = fg
[3
] +
“|” + fg
[2
] +
“|” + fg
[1
]

计次循环尾 ()
加入成员 (数组_2, 数组_
)
清除数组 (数组_
)

上一个类型 = 类型
加入成员 (数组_, 数组 [ii + 3] + “|” + 数组 [ii + 2] + “|” + 数组 [ii + 1])
计次循环尾 ()调试输出 (数组_2
)
作者: kv2005w 时间: 2022-10-15 09:59
你这个也不行,你这个输出 后成这样了。你这个方法 类型位置变了, 类型顺序 要不变的, 类型相同的,数量 从小到大就行了
天地 1 防治”
澳康 1 教育”
博传 2 教育”
国科 3 教育”
澳洋 1 民营”
科技 1 数字”
信息11 2 数字”
飞拓 3 数字”
信息 4 数字”
集团 5 数字”
传播 6 数字”
天地 7 数字”
电子 9 数字”
建源 1 增长”
科技 2 增长”
作者: kv2005w 时间: 2022-10-15 10:24
利害,我的哥,就是这样的,感谢
欢迎光临 精易论坛 (https://125.confly.eu.org/) |
Powered by Discuz! X3.4 |