找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 460|回复: 7
收起左侧

数组十六进制的排序

[复制链接]
ID:1041297 发表于 2022-8-24 08:45 | 显示全部楼层 |阅读模式
u8 code ErrorTab1[] =
{
0xFF,0x08,0x08,0x08,0xFF,0x0F,0x14,0x14,0x14,0x09,0xFF,0x00,0x03,0xFF,0x00,0x00,
0x03,0x03,0x04,0x04,0x03,0x00,0x00,0x00,0x00,

0x80,0x00,0x00,0x00,0x80,0x00,0x80,0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x80,0x80,
0x00,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x00,
};

u8 code HELLOTab1[] =
{
0xFF,0x80, //1111 1111 1000 0000
0x08,0x00, //0000 1000 0000 0000
0x08,0x00,
0x08,0x00,
0xFF,0x80,
0x0F,0x00,
0x14,0x80,
0x14,0x80,
0x14,0x80,
0x09,0x00,
0xFF,0x80,
0x00,0x80,
0x03,0x00,
0xFF,0x00,
0x00,0x80,
0x00,0x80,
0x03,0x00,
0x03,0x00,
0x04,0x80,
0x04,0x80,
0x03,0x00,
0x00,0x00,
0x00,0x00,
0x00,0x00,
0x00,0x00,
};
请问有什么办法写个函数实现HELLOTab1[]这个函数的排序,刚开始是这个数组ErrorTab1[]的排列顺序?

回复

使用道具 举报

ID:404160 发表于 2022-8-24 10:32 | 显示全部楼层
最简单的排序算法----“冒泡法”;还有二分法;还有。。。
回复

使用道具 举报

ID:332444 发表于 2022-8-24 12:06 | 显示全部楼层
简单点冒泡程序用本数组即可,快一点用改进型三冒泡,不输给快排。
回复

使用道具 举报

ID:1034262 发表于 2022-8-24 12:31 | 显示全部楼层
排序跟进制无关,冒泡算法即可。
回复

使用道具 举报

ID:161164 发表于 2022-8-24 13:31 | 显示全部楼层
初始数组的排列是
[A0,A1,A2...
B0,B1,B2...]

目标数组的排列是
[A0,B0,A1,B1...]
  1. void ArrangeArray(u8* Soc, u8* Tar, u8 Len)
  2. {
  3.         u8 i;
  4.         for(i=0;i<Len/2;i++)
  5.         {
  6.                 Soc[i*2]=Tar[i];
  7.                 Soc[i*2+1]=Tar[i+Len/2];
  8.         }
  9. }
复制代码



回复

使用道具 举报

ID:1042823 发表于 2022-8-24 16:04 | 显示全部楼层
可以用for数组点亮
回复

使用道具 举报

ID:1041297 发表于 2022-8-24 16:23 | 显示全部楼层
本帖最后由 1314love 于 2022-8-26 09:13 编辑

不是大到小或者小到大的排序
我是用这种,还有没有更加简便一点的

void hexsort(void)
{
        u8 i,j=0;
        for(i = 25;i < 50;i++)
        {
                temp[j++] = HelloTab1;
        }
        for(i = 48,j = 24;i >=0;i -= 2,j--)
        {
                led_deposit = HelloTab1[j];
        }
        for(i = 1, j = 0;i < 50 ;i += 2)
        {
                led_deposit = temp[j++];
        }
}
回复

使用道具 举报

ID:883242 发表于 2022-8-24 18:10 | 显示全部楼层
既然是固定数组,为什么不排好序在写到程序里面???
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表