OJ
李玉洁++
这个作者很懒,什么都没留下…
展开
-
C. DS二叉排序树之创建和插入
这题试了好几次,都是第一个样例过第二个不过,最后发现是把tree写在while外面了,正确解法应该写在while里面。从第五行起,输入m行,每行一个要插入的数据,都是自然数且和前面的数据不等。第三行输入n个数据,都是自然数且互不相同,数据之间用空格隔开。第一行输出有序的数据序列,对二叉排序树进行中序遍历可以得到。从第二行起,输出插入第m个数据后的有序序列,输出m行。给出一个数据序列,建立二叉排序树,并实现插入功能。对二叉排序树进行中序遍历,可以得到有序的数据序列。第四行输入m,表示要插入m个数据。原创 2023-05-25 10:33:55 · 304 阅读 · 0 评论 -
DS二叉树——二叉树之数组存储
从上图可以看出,右边的是一颗普通的二叉树,当它与左边的完全二叉树对比,发现它比完全二叉树少了第5号结点,所以在数组中用0表示,同样它还少了完全二叉树中的第10、11号结点,所以在数组中也用0表示。二叉树可以采用数组的方法进行存储,把数组中的数据依次自上而下,自左至右存储到二叉树结点中,一般二叉树与完全二叉树对比,比完全二叉树缺少的结点就在数组中用0来表示。第二行起,每行输入一个数组,先输入数组长度,再输入数组内数据,每个数据之间用空格隔开,输入的数据都是非负整数。第一行输入一个整数t,表示有t个二叉树。原创 2023-04-24 19:59:14 · 304 阅读 · 0 评论 -
DS单链表—删除重复元素
给定n个整数,按输入顺序建立单链表,删除其中的重复数字,输出结果链表。(要求不可以构建新结点,不可以定义新链表。对每组测试数据,输出删除重复数字后的结果链表表长和每个元素,具体格式见样例。n(表示有n个整数),后跟n个数字。原创 2023-03-23 00:37:10 · 198 阅读 · 0 评论 -
DS单链表--合并
假定两个单链表是递增有序,定义并实现以下函数,完成两个单链表的合并,继续保持递增有序。第1行先输入n表示有n个数据,接着输入n个数据。第2行先输入m表示有M个数据,接着输入m个数据。输出合并后的单链表数据,数据之间用空格隔开。原创 2023-03-15 22:18:29 · 304 阅读 · 0 评论 -
DS单链表--结点交换
注意不能简单交换两个结点包含数据,必须通过修改指针来实现两个结点的位置交换。用C++实现含头结点的单链表,然后实现单链表的两个结点交换位置。改变前驱结点和后驱结点,就相当于把一个新的结点换在了原来的位置。第二行输出执行第1次交换操作后的单链表数据,数据之间用空格隔开。第三行输出执行第2次交换操作后的单链表数据,数据之间用空格隔开。如果发现输入位置不合法,输出字符串error,不必输出单链表。第一行输出单链表创建后的所有数据,数据之间用空格隔开。第1行先输入n表示有n个数据,接着输入n个数据。原创 2023-03-14 22:10:38 · 572 阅读 · 0 评论 -
D. DS顺序表之循环移位
顺序表的移位是循环移位,例如顺序表:1,2,3,4,5,6。如果左移1位,即原来的头元素移动到末尾,其它元素向左移1位,变成2,3,4,5,6,1。同理,如果右移1位,即原来的尾元素移动到头,其它元素向右移1位,变成6,1,2,3,4,5。思路:要移动多少位,就从原来的表中找出多少个数,放入一个新的数组中,将剩下的数左移或右移, 之后将新数组中的元素放回表中,数字很多,可以在纸上写一下理清思路。左移3位:4,5,6,1,2,3,与原数据对比。右移4位:3,4,5,6,1,2,与原数据对比。原创 2023-03-08 19:04:17 · 90 阅读 · 0 评论 -
B. DS顺序表--连续操作
插入多个数据的multiinsert(int i, int n, int item[])函数,实现在第i个位置,连续插入来自数组item的n个数据,即从位置i开始插入多个数据。删除多个数据的multidel(int i, int n)函数,实现从第i个位置开始,连续删除n个数据,即从位置i开始删除多个数据。第2行先输入i表示插入开始的位置,再输入k表示有k个插入数据,接着输入k个数据。第3行先输入i表示删除开始的位置,再输入k表示要删除k个数据。顺序表内容包括顺序表的实际长度和数据,数据之间用空格隔开。原创 2023-03-07 19:43:38 · 159 阅读 · 0 评论 -
A. DS顺序表--类实现
如果执行操作失败(包括插入、删除、查找等失败),输出字符串error,不必输出顺序表内容。第1行先输入n表示有n个数据,即n是实际长度;每成功执行一次操作(插入或删除),输出执行后的顺序表内容。第1行输出创建后的顺序表内容,包括顺序表实际长度和数据。每成功执行一次查找,输出查找到的数据。操作包括:创建、插入、删除、查找。第2行输入要插入的位置和新数据。第3行输入要插入的位置和新数据。用C++语言和类实现顺序表。第4行输入要删除的位置。第5行输入要删除的位置。第6行输入要查找的位置。第7行输入要查找的位置。原创 2023-03-06 01:39:59 · 134 阅读 · 0 评论