题解列表

筛选

[编程入门]链表合并-题解(C++代码)

#思路假设两个链表是有序的,那么合并链表变得很简单。问题链表是无序的。但我们可以在创建链表的时候使其有序,就是将新节点插到合适的位置即可。#细节对于链表问题,使用虚拟链表头dummy,可以减少很多判断。比如常规方法创建链表,每次创建新节点都要判断链表是否为空。

成绩排序 (C++代码)

#思路实现自定义类型的比较规则即可。#代码```cpp#include#include//结构体:学生信息,包括姓名、年龄、成绩structStudent{std::stringname;intage;intscore;};//重点:实现结构体Student的比较规则intcompareStu(Stu

信息学奥赛一本通T1242-网线主管 (C++代码)二分

思路:1.我们可以列举所有网线可能的长度len(0,max],(max即输入数据中最大的),计算出每种长度下网线的数量2.时间复杂度为O(max*n),100km的长度*n,必然超时,所以我们在列举网线长度时,可以选择二分算法3.假如当前在len区间中选择了中间一个数mid,

校门外的树 (C++代码)我的第一次题解

摘要:#### 树是0到L,所以树的数量是:L+1 #### 先建立一个“树”数组,全部赋值成1表示有树 #### 然后再输入M的区域的时候循环,从开始点到结束的赋值成0 #### 最后循环判断“数”……

[编程入门]选择排序-题解(C++代码)

#选择排序将数列看成两个部分,前面部分有序,后面部分无序。在无序部分选出最小值(升序排列),与无序部分的第一位数交换。有序部分变长,无序部分变短。直至整个数列都变成有序。#代码```cpp#includeintmain(){//获取输入constintn=10;intnums[n];for(inti=