请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

partition问题

老师好,昨天晚上(准确说是今天0点多)我看问答区的问题有疑问,然后在老师的回复下面提问了,今天早上看到推送消息好像老师回复我了,但点开看发现没有消息一开始没在意,现在看看老师的回复下面应该有3个回复,但我只看到两个,不知道是不是慕课网的bug,能不能请老师再回我一下,因为我这边看不到,很不好意思

https://img1.sycdn.imooc.com//szimg/5efede3a0897a60903600749.jpg

https://img1.sycdn.imooc.com/szimg/5efedcc308b8589500000000.jpg

https://img1.sycdn.imooc.com//szimg/5efedccf08f9010600000000.jpg

正在回答

2回答

liuyubobobo 2020-07-03 16:05:48

那一定是慕课网的 bug 了。


因为这个数据有两个 23,所以相当于有相当的值。根据结果判断,其实第二个 23 才是真正的标定点。并且我们可以看出来,Numpy 的划分,标定点前面是 <= 标定点的;后面是大于标定点的。第一个 23 是被划分到了前面。


继续加油!:)

0 回复 有任何疑惑可以回复我~
  • 提问者 _Prairie #1
    我在pycharm里用ctrl+鼠标点的方式,点了partition进了源码,里面注释部分是这么写的:
    The k-th value of the element
            will be in its final sorted position and all smaller elements
            will be moved before it and all equal or greater elements behind
            it. 
    那不应该是大于等于的在后面吗
    回复 有任何疑惑可以回复我~ 2020-07-03 16:21:35
  • liuyubobobo 回复 提问者 _Prairie #2
    我看文档写的确实是前半部分是 <;后半部分是 >=;但是这个测试结果确实说明了前半部分是 <=。我觉得可以给 numpy 提 issue 了。
    回复 有任何疑惑可以回复我~ 2020-07-03 16:50:41
  • 提问者 _Prairie 回复 liuyubobobo #3
    好,谢谢老师
    回复 有任何疑惑可以回复我~ 2020-07-03 16:55:40
名侦探之江户川躺平 2022-06-01 18:11:29

我也碰到了选这个问题

等于kth的值的元素跑到了kth的前面

0 回复 有任何疑惑可以回复我~
  • 懂了,其实partition这个函数时正确的,这个函数的作用时找到第kth的值,并不用全排整个数组
    回复 有任何疑惑可以回复我~ 2022-06-01 20:00:52
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信