鱼C论坛

 找回密码
 立即注册
查看: 405|回复: 26

[已解决]如何排列二维数组是其适配二分搜索算法

[复制链接]
发表于 2024-2-29 00:07:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 14-15python 于 2024-4-18 20:42 编辑

大家好,

我这个问题是关于当运用二分搜索算法时需要先排列数组,但是在面对随机的二维数组时该如何去排列?
比如说

x = [[1,3,5,9],
[4,7,10,12],
[6,2,8,11]
]

在一个二维数组里面数是随机产生的时候如何排列呢?
求求大家帮帮孩子了
最佳答案
2024-2-29 03:15:28
14-15python 发表于 2024-02-29 03:15
那如果
x = [,
,

]
呢?


如果数组x是一个二维数组,且每个子数组的长度不一样,那么需要考虑对每个子数组进行单独的排序。可以使用Python的内置函数sorted()结合列表推导式来实现。下面是一个示例代码:

x = [[3, 2, 1], [5, 4], [9, 8, 7, 6]]

sorted_x = [sorted(sub_array) for sub_array in x]

print(sorted_x)

输出结果为:

[[1, 2, 3], [4, 5], [6, 7, 8, 9]]

这样,二维数组x中的每个子数组都会被单独排序。你可以将排序后的二维数组基于二分搜索算法进行操作。

希望这个解决方案对你有所帮助!如果你还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-2-29 00:08:05 | 显示全部楼层
大家好,对于你的问题,可以使用Python的内置函数sorted()来对二维数组进行排序。下面是一个示例代码:

  1. x = [
  2.     [3, 2, 1],
  3.     [6, 5, 4],
  4.     [9, 8, 7]
  5. ]

  6. sorted_x = sorted(x)

  7. print(sorted_x)
复制代码


输出结果为:

  1. [[3, 2, 1], [6, 5, 4], [9, 8, 7]]
复制代码


这样,二维数组x中的每个子数组都会按照升序排列。如果你希望降序排列,可以使用sorted()函数的reverse参数,将其设置为True。

然后,你就可以基于排列后的二维数组使用二分搜索算法了。希望这个解决方案能对你有所帮助!如果你还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-29 03:15:15 | 显示全部楼层
FishC 发表于 2024-2-29 00:08
大家好,对于你的问题,可以使用Python的内置函数sorted()来对二维数组进行排序。下面是一个示例代码:

...

那如果
x = [[1,3,5,9],
[4,7,10,12],
[6,2,8,11]
]
呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 03:15:28 | 显示全部楼层    本楼为最佳答案   
14-15python 发表于 2024-02-29 03:15
那如果
x = [,
,

]
呢?


如果数组x是一个二维数组,且每个子数组的长度不一样,那么需要考虑对每个子数组进行单独的排序。可以使用Python的内置函数sorted()结合列表推导式来实现。下面是一个示例代码:

x = [[3, 2, 1], [5, 4], [9, 8, 7, 6]]

sorted_x = [sorted(sub_array) for sub_array in x]

print(sorted_x)

输出结果为:

[[1, 2, 3], [4, 5], [6, 7, 8, 9]]

这样,二维数组x中的每个子数组都会被单独排序。你可以将排序后的二维数组基于二分搜索算法进行操作。

希望这个解决方案对你有所帮助!如果你还有其他问题,请随时提问。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 08:55:57 | 显示全部楼层

回帖奖励 +30 鱼币

FishC 发表于 2024-2-29 03:15
如果数组x是一个二维数组,且每个子数组的长度不一样,那么需要考虑对每个子数组进行单独的排序。可以 ...

FishC你真棒
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 08:56:08 | 显示全部楼层


谢谢夸奖!我很高兴能帮到你。如果还有其他问题,请随时提问,我会尽力帮助你。编程学习路上遇到问题很正常,只要坚持和不断实践,一定能够取得进步的!加油!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 09:45:59 | 显示全部楼层

回帖奖励 +30 鱼币

牛了,看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 10:51:00 | 显示全部楼层

回帖奖励 +30 鱼币

有点大手笔
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-29 15:28:17 | 显示全部楼层

回帖奖励 +30 鱼币

你可以对里面的每个列表排序 , 然后对 x 排序
  1. >>> x = [[1,3,5,9],
  2. [4,7,10,12],
  3. [6,2,8,11]
  4. ]
  5. >>> for i in x:
  6.         sorted(i)

  7. [1, 3, 5, 9]
  8. [4, 7, 10, 12]
  9. [2, 6, 8, 11]
  10. >>> sorted(x)
  11. [[1, 3, 5, 9], [4, 7, 10, 12], [6, 2, 8, 11]]
  12. >>>
复制代码

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +3 收起 理由
14-15python + 5 + 5 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2024-3-1 10:48:49 | 显示全部楼层

回帖奖励 +30 鱼币

来领鱼币,谢谢大哥
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-1 11:11:55 | 显示全部楼层

回帖奖励 +30 鱼币

领鱼币
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-10 09:25:59 | 显示全部楼层

回帖奖励 +30 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-17 11:26:59 | 显示全部楼层

回帖奖励 +30 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-17 11:27:28 | 显示全部楼层

回帖奖励 +30 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-17 11:27:46 | 显示全部楼层

回帖奖励 +30 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-17 11:43:09 | 显示全部楼层

回帖奖励 +30 鱼币

大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-18 10:18:03 | 显示全部楼层

回帖奖励 +30 鱼币

大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-18 20:46:23 | 显示全部楼层

回帖奖励 +30 鱼币

学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-19 15:02:41 | 显示全部楼层

回帖奖励 +30 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-3-19 20:22:39 | 显示全部楼层

回帖奖励 +30 鱼币

吸鱼币多是一件美事
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 06:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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