摘要: UVa12657 代码仓库 12657.cc 本题的题意并不难理解,主要就是对链表移动、交换和倒序操作。在对链表节点的操作时需要非常小心,否则将需要花很长的时间来进行调试。而在对链表的这三种操作中,交换是需要特别注意的。我就在做这题的时候忘记了考虑两个箱子相邻时交换的情况,导致花了相当长的时间来调试 阅读全文
posted @ 2021-03-01 21:55 ithepug 阅读(68) 评论(0) 推荐(0) 编辑
摘要: UVa120 代码仓库 120.cc 本题的意思是,通过反转,为煎饼排序(最小在上面)。所以基本思路是,先把最大的放最小面,这样的话,之后的反转就不会影响到已经排好的元素。 如果未排序中最大的元素在未排序元素的顶部(也就是最上面的煎饼),就直接翻转整个未排序元素。而在底部不需要翻转。值得注意的是,如 阅读全文
posted @ 2021-03-01 21:53 ithepug 阅读(57) 评论(0) 推荐(0) 编辑
摘要: UVa11988 代码仓库 11988.cc 这道题目的意思并不难理解,主要是对字符串(数组)的移动操作,对于新手来说看到题目的第一想法是对每一个"["和"]"后的字符串进行移动,完成数组的重新排列。但我们知道这种方式是不可取的,假设字符串(数组)有n个元素,每次移动第i个元素,后面的n-i个元素都 阅读全文
posted @ 2021-03-01 21:50 ithepug 阅读(55) 评论(0) 推荐(0) 编辑
摘要: title: Effective C++ 学习笔记(二)构造/析构/赋值运算 date: 2021-02-28 21:23:33 tags: cpp 参考书籍《Effective C++:改善程序与设计的55个具体做法(第三版)》 5. 了解C++默默编写并调用哪些函数 为什么要? 示例 C++自动 阅读全文
posted @ 2021-03-01 21:44 ithepug 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 操作系统实验4——信号量的实现和应用 代码仓库 GitLab 实验内容 在Ubuntu下编写程序,用信号量解决生产者——消费者问题。 在0.11中实现信号量,用信号量解决生产者—消费者问题。 实验步骤 1. 在Ubuntu下编写程序,用信号量解决生产者——消费者问题。 在Ubuntu上编写应用程序“ 阅读全文
posted @ 2021-02-27 18:01 ithepug 阅读(1245) 评论(2) 推荐(1) 编辑
摘要: 操作系统实验3——进程的运行轨迹的跟踪和统计 代码仓库 GitLab 实验内容 记录所有进程的轨迹,并输出到 /var/process.log 。 //行为:新建(N)、进入就绪态(J)、进入运行态(R)、进入阻塞态(W)和退出(E) //时间:系统的滴答时间(tick) //pid | 行为 | 阅读全文
posted @ 2021-02-27 17:56 ithepug 阅读(592) 评论(0) 推荐(1) 编辑
摘要: 操作系统实验2——系统调用 代码仓库 GitLab 实验内容 给linux-0.11添加两个系统调用,并在程序中使用他们。 系统调用处理过程 在实验开始之前,我们先来了解一下系统调用是怎么进行的。 如果我们想使用C函数库调用close()系统调用,可以直接在C程序中写: //int read(int 阅读全文
posted @ 2021-02-27 17:51 ithepug 阅读(323) 评论(0) 推荐(1) 编辑
摘要: title: Effective C++ 学习笔记(一)习惯C++ date: 2021-02-25 22:21:26 tags: cpp 参考书籍《Effective C++:改善程序与设计的55个具体做法(第三版)》 1. 视C++为一个语言联邦 2. 尽量以const,enum,inline替 阅读全文
posted @ 2021-02-26 23:40 ithepug 阅读(80) 评论(0) 推荐(0) 编辑