XTU湘潭大学2022春《数据结构》实验题集-21级软件工程
题解。如有疑问,欢迎留言。
SQ_ZYX
A definite boy!
展开
-
02-线性结构2 在一个数组中实现两个堆栈 (20 分)
本题要求在一个数组中实现两个堆栈。 如果我们希望最大程度上节省空间,那肯定是将两个堆栈,一个从头,一个从尾开始最有效率。 我将栈1视为从头开始的那个,所以栈顶的下标TOP1为-1,而TOP2为MaxSize。 所以当S->Top2 - S->Top1 == 1时,数组就满了。 然后入栈和出栈的操作与普通栈一样。 Stack CreateStack( int MaxSize ) { Stack cache = (Stack)malloc(sizeof(struct SNode)原创 2022-04-13 15:42:58 · 609 阅读 · 5 评论 -
01-复杂度3 二分查找 (20 分)
本题要求实现二分查找算法。 模板很好理解。 Position BinarySearch( List L, ElementType X ) { int l = 1, r = L->Last; int mid; while(l < r - 1) //由于整数除法的局限性,只能将要找的数精确到2个数之间。 { mid = (l + r) / 2; if(L -> Data[mid] > X)原创 2022-04-13 15:35:18 · 164 阅读 · 0 评论