Pro.ID1663 Title基于列表的选择排序 Title链接http://10.20.2.8/oj/exercise/problem?problem_id=1663 AC23 Submit85 Ratio27.06% 时间&空间限制描述可以采用邓老师的指针式列表存储数据,亦可以采用以下“静态列表”存储方式。 列表 List 的数据类型如下: #define MAX_SIZE 100000 /// 节点基础数据类型 typedef struct { 需要用到的函数原型如下: void init( mylist &L ) /// 初始化列表L int inputList( mylist &L ) /// 读入列表 int selectMax ( mylist &L, int beginPos, int n ) /// 对列表L,从beginPos开始的n个元素中,找到最大的元素/节点 void removeNode( mylist &L, int tmax ) /// 摘除 列表L 中 下标为 tmax 的元素 ,但并不释放单元 int selectSort( mylist &L, int beginPos, int n ) /// 对列表进行选择排序 void traverse( mylist &L ) /// 遍历列表L ,输出每个节点 当然,没采用选择排序法的AC代码,是要判cheat且封号的。 输入第一行是一个正整数n,表示列表共有n个节点。( 0 < n < 100000 ) 接下来n行,每行是一个非负整数 id 和 一个字符串 str ,按顺序表示列表的每一个节点,节点的员工编号是id (不一定唯一)、姓名是str 。员工姓名字符串不含空格,0 < |str| < 20 输出Description 可以采用邓老师的指针式列表存储数据,亦可以采用以下“静态列表”存储方式。 列表 List 的数据类型如下: #define MAX_SIZE 100000 /// 节点基础数据类型 typedef struct { 需要用到的函数原型如下: void init( mylist &L ) /// 初始化列表L int inputList( mylist &L ) /// 读入列表 int selectMax ( mylist &L, int beginPos, int n ) /// 对列表L,从beginPos开始的n个元素中,找到最大的元素/节点 void removeNode( mylist &L, int tmax ) /// 摘除 列表L 中 下标为 tmax 的元素 ,但并不释放单元 int selectSort( mylist &L, int beginPos, int n ) /// 对列表进行选择排序 void traverse( mylist &L ) /// 遍历列表L ,输出每个节点 当然,没采用选择排序法的AC代码,是要判cheat且封号的。 Input 第一行是一个正整数n,表示列表共有n个节点。( 0 < n < 100000 ) 接下来n行,每行是一个非负整数 id 和 一个字符串 str ,按顺序表示列表的每一个节点,节点的员工编号是id (不一定唯一)、姓名是str 。员工姓名字符串不含空格,0 < |str| < 20 Output 按员工id号非降序执行选择排序,排序后,输出n行:先输出员工id,再输出员工名字。 Sample Input 5 Sample Output 1 Tom Source Author 样例输入5 样例输出1 Tom 提示作者 |