Skill语言实现将一个table中的坐标point(x,y)按照x和y进行从小到大排序的函数
2023-06-13 09:17:35 时间
/*****************
对table中的point进行排序,按照type值将x或者y从小到大排
*******************/
defun(TableSort (table type)
table_len=length(table)
let((sortedTable)
sortedTable=makeTable("table")
for(i 0 table_len-1
sortedTable[i]=table[i]
)
for(i 0 table_len-2
for(j i+1 table_len-1
if(type=="x" && car(sortedTable[i])>car(sortedTable[j]) then
temp=sortedTable[i]
sortedTable[i]=sortedTable[j]
sortedTable[j]=temp
else if(type=="y" && nth(1 sortedTable[i])>nth(1 sortedTable[j]) then
temp=sortedTable[i]
sortedTable[i]=sortedTable[j]
sortedTable[j]=temp
)
)
)
)
sortedTable=sortedTable
)
)
mytable=makeTable("table")
mytable[0]=3:1
mytable[1]=1:2
mytable[2]=2:3
table1=TableSort(mytable "x")
table1_len=length(table1)
for(i 0 table1_len-1 axlUIWPrint(nil "table1[%d]=%P" i table1[i]))
/*
执行结果:
table1[0]=1:2
table1[1]=2:3
table1[2]=3:1
*/
mytable[0]=1:3
mytable[1]=2:2
mytable[2]=3:1
table1=TableSort(mytable "y")
table1_len=length(table1)
for(i 0 table1_len-1 axlUIWPrint(nil "table1[%d]=%P" i table1[i]))
/*
执行结果:
table1[0]=3:1
table1[1]=2:2
table1[2]=1:3
*/
相关文章
- 如何在 Spartacus 使用 UserAccountFacade 在语言设置更改后重新读取用户数据
- c语言输入4个整数要求按由小到大_c语言任意输入3个数从小到大排序
- c语言里void什么作用,C语言中void是什么意思?
- 海龟图c语言编程,【编程课堂】海龟作图
- 贪心算法及几个经典例子c语言_贪心算法一定是最优解吗
- 【说站】c语言中fread函数怎么用
- c语言的stl库_c语言string库
- 英雄联盟 源代码_c语言游戏源码
- 2022-07-22:以下go语言代码输出什么?A:1;B:1.5;C:编译错误;D:1.49。package mainimpo
- 2023-02-25:请用go语言调用ffmpeg,解码mp4文件并保存为YUV420SP格式文件,YUV420P不要转换成YUV420SP。
- 【C 语言】二级指针作为输入 ( 指针数组 | 指针数组排序 | 字符串排序 | strcmp 函数 )
- 【C 语言】二级指针作为输入 ( 二维数组 | 抽象业务函数 | 二维数组打印函数 | 二维数组排序函数 )
- 【C 语言】二级指针作为输入 ( 自定义二级指针内存 | 二级指针排序 | 抽象业务逻辑函数 )
- Go语言的性能如何?
- Go语言switch case语句
- JavaScript语言基础-变量声明var和let和const(ES6特性)详解编程语言
- 改变Linux的默认语言:一种提升用户体验的方法(修改linux的默认语言)
- 用Go语言做极简风格网址导航
- MySQL 与 C 语言之间的联系(mysqlc语言)
- Lua语言在Linux下的应用前景(lua语言linux)
- 里的应用Ruby语言与Redis结合应用的一次尝试(ruby在redis)