几个数据结构的算法题!大家帮忙做做! 最好用C语言! MM考研急用!
1. 设A为递增有序的单链表(长度设为n),B为递减有序的单链表(长度设为m),编写程序,利用原表的存储空间,将A,B合并成一个递增有序的单链表,要求时间复杂度为O(n+m),并写出算法思想。
2. 设有N个不同整数组成的递增有序序列,存放于一维数组a[k+1…..k+N]中,编写程序,判断是否存在某一整数i,恰好就存放在数组a[i]中。要求时间复杂度为O(log2N),并对算法进行说明。
3. 在一棵二叉链表表示的二叉树中,*root为根结点,*p和*q为二叉树中两个结点,编写程序,求距离它们最近的共同祖先,并写出算法思想。
4. 设树T采用孩子兄弟链表表示,编写程序,计算树T的度,并写出算法思想。
5. 设有向无环图G以邻接矩阵方式存储,编写程序,求G图中最长的路径长度,并写出算法思想。