Skip to content

breeze1396/school_learn_algorithm_4th

Repository files navigation

school_learn_algorithm_4th

1、 设有一向量 ,试设计一个算法,将向量逆置,即使元素排列次序颠倒,成为逆向量 。要求逆向量仍然占用原向量的空间,并用顺序表和单链表两种方法表示,写出不同的处理过程。

2、 实现循环单链表倒置的程序。

3、 实现双向循环链表倒置的程序。

4、 用一维数组A和B表示的两个线性表,元素的个数分别为m和n,若表中的数据都是由小到大顺序排列,且这m+n个数据中没有相重的。设计一个算法将这两个线性表合并,仍是数据由小到大排列的线性表。

5、 用顺序存储结构实现将两个有序线性表合并成一个有序表。合并后的结果不另设新表存储。

6、 用顺序存储结构实现将m个有序表合并成一个有序表。

7、 用链式存储结构实现将m个有序表合并成一个有序表。

8、 设 和 是两个循环链表,将这两个链表合并为循环链表c。其中 。

9、 假设有一个循环链表的长度大于1,且表中既无头结点也无头指针。已知p为指向链表中某结点的指针。实现在链表中删除指针p所指结点的前驱结点。

10、 给定一个不带表头结点的单链表,试编写计算此单链表长度的程序。

11、 计算循环链表p的结点个数。

12、 已知线性表中的元素按递增顺序排序,并以带表头结点的单链表做存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。

13、 已知线性表中的元素是无序的,并以带头结点的单链表作为存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。

14、 试设计删除链表f中值为a的结点的程序。若找不到,打印出错信息。设f为首指针,a为整数。

15、 设指针la和lb分别指向两个无头结点单链表中的首元结点,试设计从表la中删除自第i个元素起共len个元素,并将这len个元素插入到表lb中第i个元素之前的程序。 16、 有一个带头指针的单链表,写出在其值为x的结点之后插入m个结点的程序。

17、 写出在无头结点的单链表的第i个元素之前插入一个元素的程序。

18、 设计在无头结点的单链表中删除第i个结点的程序。

19、 已知顺序表A的元素值按递增存放,顺序表B的元素值按递减存放。将B中所有元素插入到A中,使其仍为递增有序。设A的空间足够大。

20、 实现在单链表中删除相同的多余结点的程序。

21、 已知由单链表表示的线性表中含有两类字符的数据元素(如:字母字符,数字字符)。设计构造两个单链表表示的线性表,并使每个表中只含有同一类的字符,且利用原表中的结点空间作为这两个表的结点空间。

22、 输入一个整数序列,其值在1~1000之间,当输入的值为0时,标志该序列结束。编写程序将其按递增次序存放在一个单链表中,并输出。

23、 设单链表中存放着n个字符,试设计程序判断字符串是否是中心对称。例如xyzzyx和xyzyx都是中心对称字符串。

24、 设x和y是表示成单链表的两个串,设写一程序,找出x中第一个不在y中出现的字符(假定每个结点只存放一个字符)。

25、 已知串a和b,试求出所有包含在a中而不包含在b中的字符构成的新串r。

26、 若s和t是用结点大小为1的单链表存储的两个串,设计一个算法将s串首次与t匹配的子串逆置,求新的串s。

27、 编写从串s中删除所有和串t相同子串的算法。

28、 设计一个程序统计长度为n的串string中每个字符出现的次数。

29、 输入一文本行(最多50个字符),找出某一个不包含空格的子串在文本行中出现的次数和它们的位置。

30、 实现对n个字符串进行排序。

31、 试写一程序,用于判断输入的字符串是否为如下形式的字符串W&M$,其中字符串M是字符串W的字符反向排列。在此假定W不含有字符&和字符$,字符&用作W与M的分隔符,字符$用作字符串的输入结束符。

32、 假定数组A的n个元素中有多个零元素,请将A中所有非零元素依次移到A的前端。

33、 试写一个判别表达式中开、闭括号是否配对出现的程序。

34、 若矩阵A中的某一个元素A[i,j]是第i行中的最小值,而又是第j列中的最大值,则称A[i,j]为矩阵A中的一个鞍点。请写出一个可确定鞍点位置的算法(如果鞍点存在)。

35、 试设计将数组A中所有奇数移到所有偶数之前的算法,要求不另外增加存储空间,且时间复杂度为O(n)。

36、 稀疏矩阵只存放其非零元素的行号、列号和数值,一一维数组顺序存放之,行号为—1作为结束标记。试写出二个稀疏矩阵相加的算法。

37、 给定一颗二叉树用链表表示,用非递归算法求出二叉树结点的数目。

38、 给定一颗二叉树用链表表示,用非递归算法求出二叉树叶子结点的数目。

39、 将二叉树的叶结点按从左到右的顺序连成一个单链表。

40、 给定一颗二叉树用链表表示,用非递归算法求出二叉树的深度。 41、 给定一颗二叉树用链表表示,用非递归算法求出二叉树各结点的层数。

42、 给定一颗二叉树用链表表示,试写出从根开始,按层次遍历二叉树的算法,同层的结点按从左到右的次序访问。

43、 给定一颗二叉树用链表表示,用非递归算法将二叉树所有结点的左右子树相互交换。

44、 给定一颗二叉树用链表表示,用非递归算法求出值为x的结点的所有祖先结点。

45、 已知某哈希表的装填因子小于1,哈希函数H(key)为key的第一个字母在字母表中的序号,处理冲突的方法为线性探测开发定址法。试编写一个按第一个字母的顺序输出哈希表中所有关键字的算法。

46、 试设计一个用开放定址法解决冲突的哈希表中删除一个指定结点的算法。

47、 给出n个学生的考试成绩表,每个记录由姓名和分数组成,试设计一个算法:(1)按分数高低次序,打印出每个学生在考试中的名次,分数相同的为同一名次;(2)按名次列出每个学生的姓名和分数。

48、 实现用单链表作为存储结构的选择排序算法。

49、 采用插入排序方法,将一个无序的单链表排列成一个降序的有序链表。 50、 设计双冒泡排序算法,即在排序过程中交替改变扫描方向。

51、 实现快速排序的非递归算法。

52、 给定两个单链表作为存储结构的有序文件,头指针分别为ha,hb,均不带表头结点。将它们归并为一个新的单链表,其头指针为hc。要求利用原有两个单链表中的结点空间。

53、 设有一向量 ,试设计一个算法,将向量逆置,即使元素排列次序颠倒,成为逆向量 。要求逆向量仍然占用原向量的空间,并用顺序表和单链表两种方法表示,写出不同的处理过程。

54、 实现循环单链表倒置的程序。

55、 实现双向循环链表倒置的程序。

56、 用一维数组A和B表示的两个线性表,元素的个数分别为m和n,若表中的数据都是由小到大顺序排列,且这m+n个数据中没有相重的。设计一个算法将这两个线性表合并,仍是数据由小到大排列的线性表。

57、 用顺序存储结构实现将两个有序线性表合并成一个有序表。合并后的结果不另设新表存储。 58、 用顺序存储结构实现将m个有序表合并成一个有序表。

59、 用链式存储结构实现将m个有序表合并成一个有序表。

60、 设 和 是两个循环链表,将这两个链表合并为循环链表c。其中 。

61、 假设有一个循环链表的长度大于1,且表中既无头结点也无头指针。已知p为指向链表中某结点的指针。实现在链表中删除指针p所指结点的前驱结点。

62、 给定一个不带表头结点的单链表,试编写计算此单链表长度的程序。

63、 计算循环链表p的结点个数。

64、 已知线性表中的元素按递增顺序排序,并以带表头结点的单链表做存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。

65、 已知线性表中的元素是无序的,并以带头结点的单链表作为存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。

66、 试设计删除链表f中值为a的结点的程序。若找不到,打印出错信息。设f为首指针,a为整数。

67、 设指针la和lb分别指向两个无头结点单链表中的首元结点,试设计从表la中删除自第i个元素起共len个元素,并将这len个元素插入到表lb中第i个元素之前的程序。

68、 有一个带头指针的单链表,写出在其值为x的结点之后插入m个结点的程序。

69、 写出在无头结点的单链表的第i个元素之前插入一个元素的程序。

70、 设计在无头结点的单链表中删除第i个结点的程序。

71、 已知顺序表A的元素值按递增存放,顺序表B的元素值按递减存放。将B中所有元素插入到A中,使其仍为递增有序。设A的空间足够大。

72、 实现在单链表中删除相同的多余结点的程序。

73、 已知由单链表表示的线性表中含有两三类字符的数据元素(如:字母字符,数字字符)。设计构造两个单链表表示的线性表,并使每个表中只含有同一类的字符,且利用原表中的结点空间作为这两个表的结点空间。

74、 输入一个整数序列,其值在1~1000之间,当输入的值为0时,标志该序列结束。编写程序将其按递增次序存放在一个单链表中,并输出。

75、 设单链表中存放着n个字符,试设计程序判断字符串是否是中心对称。例如xyzzyx和xyzyx都是中心对称字符串。 76、 设x和y是表示成单链表的两个串,设写一程序,找出x中第一个不在y中出现的字符(假定每个结点只存放一个字符)。

77、 已知串a和b,试求出所有包含在a中而不包含在b中的字符构成的新串r。

78、 若s和t是用结点大小为1的单链表存储的两个串,设计一个算法将s串首次与t匹配的子串逆置,求新的串s。

79、 编写从串s中删除所有和串t相同子串的算法。

80、 设计一个程序统计长度为n的串string中每个字符出现的次数。

81、 输入一文本行(最多50个字符),找出某一个不包含空格的子串在文本行中出现的次数和它们的位置。

82、 实现对n个字符串进行排序。

83、 试写一程序,用于判断输入的字符串是否为如下形式的字符串W&M$,其中字符串M是字符串W的字符反向排列。在此假定W不含有字符&和字符$,字符&用作W与M的分隔符,字符$用作字符串的输入结束符。

84、 假定数组A的n个元素中有多个零元素,请将A中所有非零元素依次移到A的前端。

85、 试写一个判别表达式中开、闭括号是否配对出现的程序。 86、 若矩阵A中的某一个元素A[i,j]是第i行中的最小值,而又是第j列中的最大值,则称A[i,j]为矩阵A中的一个鞍点。请写出一个可确定鞍点位置的算法(如果鞍点存在)。

87、 试设计将数组A中所有奇数移到所有偶数之前的算法,要求不另外增加存储空间,且时间复杂度为O(n)。

88、 稀疏矩阵只存放其非零元素的行号、列号和数值,一一维数组顺序存放之,行号为—1作为结束标记。试写出二个稀疏矩阵相加的算法。

89、 给定一颗二叉树用链表表示,用非递归算法求出二叉树结点的数目。

90、 给定一颗二叉树用链表表示,用非递归算法求出二叉树叶子结点的数目。

91、 将二叉树的叶结点按从左到右的顺序连成一个单链表。

92、 给定一颗二叉树用链表表示,用非递归算法求出二叉树的深度。

93、 给定一颗二叉树用链表表示,用非递归算法求出二叉树各结点的层数。

94、 给定一颗二叉树用链表表示,试写出从根开始,按层次遍历二叉树的算法,同层的结点按从左到右的次序访问。

95、 给定一颗二叉树用链表表示,用非递归算法将二叉树所有结点的左右子树相互交换。

96、 给定一颗二叉树用链表表示,用非递归算法求出值为x的结点的所有祖先结点。

97、 已知某哈希表的装填因子小于1,哈希函数H(key)为key的第一个字母在字母表中的序号,处理冲突的方法为线性探测开发定址法。试编写一个按第一个字母的顺序输出哈希表中所有关键字的算法。

98、 试设计一个用开放定址法解决冲突的哈希表中删除一个指定结点的算法。

99、 给出n个学生的考试成绩表,每个记录由姓名和分数组成,试设计一个算法:(1)按分数高低次序,打印出每个学生在考试中的名次,分数相同的为同一名次;(2)按名次列出每个学生的姓名和分数。

100、 实现用单链表作为存储结构的选择排序算法。

101、 采用插入排序方法,将一个无序的单链表排列成一个降序的有序链表。

102、 设计双冒泡排序算法,即在排序过程中交替改变扫描方向。

103、 实现快速排序的非递归算法。

104、 给定两个单链表作为存储结构的有序文件,头指针分别为ha,hb,均不带表头结点。将它们归并为一个新的单链表,其头指针为hc。要求利用原有两个单链表中的结点空间。

105、 已知线性表中的元素按递增顺序排序,并以带表头结点的单链表做存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。 106、 已知线性表中的元素是无序的,并以带头结点的单链表作为存储结构。删除表中所有值大于min且小于max的元素(若表中存在这样的元素)。

107、 试设计删除链表f中值为a的结点的程序。若找不到,打印出错信息。设f为首指针,a为整数。

108、 设指针la和lb分别指向两个无头结点单链表中的首元结点,试设计从表la中删除自第i个元素起共len个元素,并将这len个元素插入到表lb中第i个元素之前的程序。

109、 有一个带头指针的单链表,写出在其值为x的结点之后插入m个结点的程序。

110、 写出在无头结点的单链表的第i个元素之前插入一个元素的程序。

111、 设有一向量 ,试设计一个算法,将向量逆置,即使元素排列次序颠倒,成为逆向量 。要求逆向量仍然占用原向量的空间,并用顺序表和单链表两种方法表示,写出不同的处理过程。

112、 实现循环单链表倒置的程序。

113、 实现双向循环链表倒置的程序。

114、 用一维数组A和B表示的两个线性表,元素的个数分别为m和n,若表中的数据都是由小到大顺序排列,且这m+n个数据中没有相重的。设计一个算法将这两个线性表合并,仍是数据由小到大排列的线性表。

115、 用顺序存储结构实现将两个有序线性表合并成一个有序表。合并后的结果不另设新表存储。

116、 用顺序存储结构实现将m个有序表合并成一个有序表。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published