希赛教育计算机专业考研专业课辅导招生
希赛教育计算机专业考研专业课辅导视频
希赛教育计算机考研专业课在线测试系统
试设计一个算法用尽可能少的辅助空间将顺序表中前m个元素和后n个元素进行互换即将线性表(aa…ambb…bn) 改变成(bb…bnaa…am)
此题的难点在于要求用尽可能少的辅助空间如果没有这个限制可以另设一个和已知顺序表空间大小相同的顺序表然后进行元素复制即可
此题的另一种算法为对顺序表进行三次逆置第一次是对整个顺序表进行逆置之后分别对前n个和后m个元素进行逆置
由于逆置顺序表可以利交换相应元素进行其时间复杂度为线性级别则三次调用逆置算法完成的操作的时间复杂度仍然是线性级别的即为O(m+n)