Bootstrap

数据结构算法题day03

数据结构算法题day03

题目

2.设计一个高效算法,将顺序表L的所有元素逆置,要求算法的空间复杂度为O(1)

在这里插入图片描述

算法思想:
1、常规的解法:
Void reverse (sqlist &L){
	Elemtype temp;	//辅助变量
		for(i = 0,i < L.length; i++){
		temp = L.data[i];
		L.data[i] = L.data[L.length - 1 – i]	// L.length = n + 1  n = L.length – 1
		 L.data[L.length - 1 – i] = temp;
	}
}

在这里插入图片描述

算法思想:
2、递归法:	//二叉树 -> 递归
//好处:简洁
Void reverse (int *a , int low , int high){
	if( low < high) 
		swap(a[low],a[high])
		reverse(A,low+1,high-1)
}
;