【听说这里码农很多】一个看似简单的问题,想了半天想不出来
整理时间:2013-07-03 19:09 来源:www.vimiy.com 作者:编辑 点击:次
【楼主】2013-07-01 18:03
» 一个看似简单的问题,想了半天想不出来
一个长为2N的数组,初始值为,请设计算法把它的值变成。要求额外存储空间O(1),时间复杂度O(N)
自己想了下,如果有长度2N的额外存储空间,那直接拷贝就行,时间复杂度O(N)很简单。
但现在只有O(1)的额外存储空间,感觉需要大量的插入,移动数组里面的元素,时间复杂度可能就不止O(N)了。
有高人能帮忙解答一下吗?
网友评论2013-07-01 20:39
码农们都去哪儿了?
网友评论2013-07-01 20:57
看错了 再想想
网友评论2013-07-01 21:11
楼主这是什么数组?
我感觉如果这两个数组是链表结构的话 可能连额外储存空间都不需要啊
网友评论2013-07-01 21:24
取一个不在最终位置的元素出来,然后每次把空出来的格子找到并填上最终的元素
网友评论2013-07-01 21:28
楼上正解.
网友评论2013-07-01 21:33
a被映射到a这里的左移是循环左移 可以去搜下均匀洗牌函数
发表回复
LOL罗辑思维全国人大代表真三搞笑视频柳岩
Copyright © 2012年2月8日