List 结构体操作

整理音乐

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

请用链表完成下面题目要求。

xiaobai 很喜欢音乐,几年来一直在收集好听的专辑。他有个习惯,每次在听完一首音乐后会给这首音乐打分,而且会隔一段时间给打好分的音乐排一个名次。今天 xiaobai打开自己的音乐文件夹,发现有很多不同时期打过分的排好序的子音乐文件夹,他想把这些音乐放到一块,组成一个分数有序的序列。由于音乐文件很多,而文件里音乐的数目也是不确定的,怎么帮帮 xiaobai完成这件工作呢?

输入

输入数据第一行为一个整数n(n<1000),代表文件夹的数量。接下来是n个文件夹的信息,每个文件夹信息的第一行是一个数字m,代表这个文件夹里有m首歌,后面m行每行一个歌曲名、分数,之间用空格分开。

输出

输出一行,为所有音乐组成的一个序列,音乐只输出名字。

如果音乐分数相同则按照音乐名字典序进行排序。

示例输入

3
4
aaa 60
aab 50
aac 40
aad 30
2
kkk 60
kkd 59
3
qow 70
qwe 60
qqw 20

示例输出

qow aaa kkk qwe kkd aab aac aad qqw
千辛万苦终于写出来了,哎 终于知道不学C++的坏处了,不知道什么是构造函数,不会重载,。。各种不会 此文包含结构体类List的插入元素,排序等一系列操作
 

List 结构体操作

时间: 2024-08-10 05:33:43

List 结构体操作的相关文章

socket编程——sockaddr_in结构体操作

sockaddr结构体 sockaddr的缺陷: struct sockaddr 是一个通用地址结构,这是为了统一地址结构的表示方法,统一接口函数,使不同的地址结构可以被bind() , connect() 等函数调用:sa_data把目标地址和端口信息混在一起了 struct sockaddr {       unsigned short sa_family; char sa_data[14];                   };  sa_family是通信类型,最常用的值是 "AF_I

转载::POJ 2991 线段树+计算几何(有c++结构体操作)

POJ 2991 线段树+计算几何 (2011-02-27 21:13:44) 转载▼ 标签: 杂谈 分类: OI 话说这一题真的是很恶心很恶心,不过确实改变了我对线段树的一些看法,算是很经典的题目. 题意:有一个吊车由很多个不同长度的线段组成,一开始是一条长直线起点在(0,0),尾节点在(0,sum[n]),每条线段之间的夹角的初始值是180度.然后有一些操作a. b将第a条线段和a+1之间的夹角变成b度,经过每一次操作都要求出尾节点的坐标. 首先要用到一个计算几何的知识(没学过..请教而来)

第七天:C基础之字符串操作与结构体

培训的第七天,来成都的十天.来的一行人都觉得好累.也许是因为天气原因,也许是因为今天所讲的内容开始不好理解了. 早上主要讲了字符串相关的两个函数的操作.strstr和strtok ,strstr前面接触过,是查找子串,返回地址.strtok是使用分隔符分割字符串.今天的第一个程序就是不使用这两个函数实现将字符串中的单词分割出来存在二维数组中.这个使用一次循环就能够完成,循环遍历遇到空格是用'\0'代替.代码如下: 1 #include<stdio.h> 2 #include<stdlib

几年前做家教写的C教程(之五专讲结构体与文件操作)

C语言学习宝典(5) 结构体: 将不同类型的数据组合成为一个有机的整体,这个整体就是一个结构体. 例如: Struct student { Int name; Char sex; Float score; }: 使用方法: 类型名 成员名: 一般形式: Struct { 成员列表: }变量名表列: 结构体变量的引用: 结构体变量名.成员名 文件: FILE  *fp; Fp=fopen(文件名,文件打开方式): Fclose(文件指针) 例1  对候选人得票的统计程序,设有3个后选人,每次输入一

编程题:展示对整个结构体变量的引用的其他方法。功能:对整个结构体变量进行操作。

编程题:展示对整个结构体变量的引用的其他方法.功能:对整个结构体变量进行操作. #include<stdio.h> void main() { struct person { char name[20]; char sex; struct date {int year; int month; int day; }birthday; float height; }per1,per2={"LiPing","M",2013,12,15,175.5}; per1

通过一个函数,操作一个结构体,实现对应函数功能

指针结构体一直是我的盲点,所以今天有必要整“清理门户”.此种通过一个函数操作一个结构体,实现对应函数功能,用法十分巧妙,使用得当可以使得代码可移植性和易懂性大大的增加,有人说过“代码注释的最高境界是程序的自述,而不是双斜杠然后后面跟着中英文的注释”.哈哈,说远了,下面开始进入今天的加油站,补充体力了. 1 // 头文件 2 #include <stdio.h> 3 4 // 函数声明 5 typedef struct _halDeviceFuncs_t 6 { 7 void (*pfnInit

cdev成员结构体file_operations文件操作结构的分析

struct file_operations{ struct module *owner; // 指向拥有该结构的模块的指针,避免正在操作时被卸载,一般为初始化为THIS_MODULES loff_t (*llseek) (struct file *, loff_t, int); // llseek用来修改文件当前的读写位置,返回新位置 // loff_t为一个”长偏移量”.当此函数指针为空,seek调用将会以不可预期的方式修改file结构中的位置计数器. ssize_t (*read) (st

c语言_文件操作_FILE结构体小解释

参考文档来自:https://www.cnblogs.com/haore147/p/3648395.html 我们通过fopen返回一个文件指针(指向FILE结构体的指针)来进行文件操作. 在vs2013下的代码如下: #include <stdio.h> #pragma warning(disable:4996) int main() { FILE *p = fopen("C:\\test\\win\\a.txt", "r"); char buf[10

使用结构体 file_operations封装驱动设备的操作

最近学习到了Linux驱动章节的课程,对设备的对应驱动的注册有些困惑,看了下发现是把设备的所有操作方法封装到结构体 file_operations 中,这个结构体为所有的设备文件都提供了统一的操作函数接口.然后把这个结构体连同设备的主设备号.名字(没啥用)一起,通过函数 register_chrdev(0, "first_drv", &first_drv_fops) 注册驱动模块到内核的字符设备数组chrdev的第xx项,具体注册和使用方法和裸机LCD及LCD控制器的一模一样!