数组元素换位算法 加强实用版
今天拜读了
http://community.csdn.net/Expert/topic/5277/5277687.xml?temp=.7706415
一帖各位的回复,原问题是
设a[0:n-1]是一个有n个元素的数组,k(0<=k<=n-1)是一个非负整数。试设计一个算法将子数组a[0:k]与a[k+1:n-1]换位。要求算法在最坏情况下所用的时间为O(n),且只用到O(1)的辅助空间
我有个想法,倘若不限制辅助空间,但是a数组存储的不是数字,而是非常复杂的对象数据(我的意思是每个对象搬动都比较耗内存),那么如何设计算法呢?
设a[0:n-1]是一个有n个元素的对象数组,k(0<=k<=n-1)是一个非负整数。试设计一个算法将子数组a[0:k]与a[k+1:n-1]换位。辅助空间不限,要求算法用时越少用存越少越好,不知各位高手有何见解?