weijun-lin / personal-blog Goto Github PK
View Code? Open in Web Editor NEWPersonal Blog Powered By Hexo.Next
Home Page: https://weijun-lin.top
Personal Blog Powered By Hexo.Next
Home Page: https://weijun-lin.top
操作系统是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。—— 维基百科
前几章为引言部分 略
https://joke-lin.top/2020/03/31/2020-03-31-PAT-Advanced-1018/
题目描述
题目地址
一眼看去便是最短路问题,和1003,有点类似,但又不同。
题目就是求最短路,多条最短路取从基地携带数量最少了,如果有一样的携带数量,就取带回数量最少的,确保这样的路径唯一。
https://joke-lin.top/2020/03/21/2020-03-24-PAT-Advanced-1014/
题目描述
题目地址
之前一直错还是题目看错,英文题目还是要注意啊。
17:00后的不予服务,只要在17:00之前接受服务的都可以,不用管截止时间。
https://joke-lin.top/2020/04/06/2020-04-06-connected-components/
简单定义
有向图中称为,强连通分量。连通图和连通分量都是针对无向图。
在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。
https://joke-lin.top/2020/05/06/2020-05-06-PAT-Advanced-1051/#more
题目描述
题目地址
给定栈的最大容量,按照1~N的顺序入栈,但可以随时出栈,判断给出的pop序列是否是可能的情况
https://joke-lin.top/2018/11/02/2018-11-02-BinaryFileReader/
在学习BMP位图的构成时,对网上的收费16进制查看器很是烦躁,notepad查看时卡到放弃人生
因为只是为了初步学习图片知识,以及查看2进制文件内部构成的话,可以自己实现一个
思路
使用C++的文件操作进行二进制的读操作,这里默认以1个字节为单位(2位16进制)
每次读一个字节,就将其转化位16进制,读取的时候需要注意有符号数和无符号数的区别,我这里用unsigned Char
https://joke-lin.top/2020/05/16/2020-05-16-PAT-Advanced-1059/
题目描述
题目地址
将一个数分解为一系列素数相乘的结果,如97532468=2^211171011291
https://joke-lin.top/2020/05/02/2020-05-02-PAT-Advanced-1049/#more
题目描述
题目地址
给定n,给出[1,n]范围内所有数字含有的1的个数
https://joke-lin.top/2018/10/01/2018-10-01-manacher/
leetcode5:https://leetcode-cn.com/problems/longest-palindromic-substring/description/
可以自己提交看看对不对
暴力搜索
这个应该是最容易的方法了,但是一看复杂度O(n3),还是放弃好了。
但是这个方法也是遍历所有字符串字串的一种方法。下面是暴力搜索的代码:
https://joke-lin.top/2020/03/29/2020-03-29-PAT-Advanced-1017/
题目描述
题目地址
和 1014 很相似的题目,同样使用优先队列解决,容易的一道题。
题目的意思是真的难懂,17:00之后不能被服务,的17:00 是到达时间。。不是服务时间,服务时间不能超过1小时是指大于1小时的按一小时处理,而不是不处理
https://joke-lin.top/2020/05/17/2020-05-17-VERCEL-DNS-EDIT/#more
VERCEL提供静态网站的部署和CDN的加速,十分优秀的工具(适合白嫖)
问题简述
在部署自己的静态网站后(从GITHUB),VERCEL提供了他们的子域名,当然可以使用自己的域名。可以用CNAME将域名导向VERCEL的子域名,也可以直接使用我们自己的域名(不通过CNAME)。具体配置参考:Custom Domain
但直接使用自己的域名会出现一个问题,使用VERCEL提供的DNS
https://joke-lin.top/2020/03/24/2020-03-24-prime-sieve/#more
素数的定义:指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数。大于1的自然数若不是素数,则称之为合数。
https://joke-lin.top/2020/01/24/2020-01-24-30OSMakeNoteAll/
30DaysMakeOS-Note
《30天自制操作系统》(川合秀实)阅读笔记
笔记目录
第一天到第三天——从汇编到C语言
第四天——C语言和画面显示的练习
https://joke-lin.top/2020/05/23/2020-05-23-PAT-Advanced-1060/
题目描述
题目地址
给定有效数字位数,以及两个浮点数,判断浮点数转换为科学计数法后判断是否相同
https://joke-lin.top/2020/04/11/2020-04-11-PAT-Advanced-1033/
题目描述
题目地址
给定出发点到目的地的距离,车油箱容量,平均一单位油的行驶距离和一系列加油站到出发点的距离以及油价。求到达目的地的最低油价,不能到达的话,给出最大可到达距离,假定开始油箱是空的。
https://joke-lin.top/2020/05/14/2020-05-14-PAT-Advanced-1057/
题目描述
题目地址
给定栈的一系列POP,PUSH操作,求执行这些操作后的栈中从小到大排序的中位数(询问中位数的操作是多次的)
https://joke-lin.top/2020/03/27/2020-03-27-PAT-Advanced-1016/#more
题目描述
题目地址
提交了整整一个下午。。。
再次吐槽PAT的题目描述,很多时候都是迷迷糊糊的,很多地方没有说清楚。
这道题一个巨大的坑:没有符合条件的时间对时,不输出该用户信息
太坑了。。
https://joke-lin.top/2020/05/13/2020-05-13-Binary-Index-Tree/
树状数组
树状数组是能够完成下述操作的数据结构:
给定一个初始值全为0的数列,(a_1,a_2,\dots,a_n)
给定i,计算(a_1+a_2+\dots+a_n)
给定i和x,执行(a_i+=x)
即单点修改和区间和计算
https://joke-lin.top/2020/05/24/2020-05-24-Computer-System-Architecture-Note/#more
Github:笔记-计算机系统结构-张晨曦-第二版
https://joke-lin.top/2020/03/02/2020-03-02-Compute-Networking-A-Top-Down-Approach-6th/
书本配套答案
2020-01-07 Joke-Lin
https://joke-lin.top/2020/04/11/2020-04-11-PAT-Advanced-1032/
题目描述
题目地址
简单来说就是求用链表表示的两个字符串的公共后缀的开始位置。
https://joke-lin.top/2020/03/01/2020-02-29-Leetcode84/
题目描述
题目图片会403。。
给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。
求在该柱状图中,能够勾勒出来的矩形的最大面积。
以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。
图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。
示例:
12输入: [2,1,5,6,2,3]输出:
https://joke-lin.top/2020/04/21/2020-04-21-PAT-Advanced-1043/#more
题目描述
题目地址
给定一个二叉树的前序遍历结果,判断是否是搜索二叉树或者搜索二叉树的镜像,是的话打印词树的后续遍历结果
https://joke-lin.top/2019/02/14/2019-02-14-VirtualBox_Ubuntu/
虚拟机的简单概念
摘自百度百科
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样的功能,进入虚拟系统后,所有操作都是在这个全新的独立的虚拟系统里面进行,可以独立安装运行软件,保存数据,拥有自己的独立桌面,不会对真正的系统产生
https://joke-lin.top/2020/04/16/2020-04-16-PAT-Advanced-1040/#more
题目描述
题目地址
求最长回文子串的长度
https://joke-lin.top/2020/03/31/2020-03-31-Draw-CherryTree/
看到网上很多代码绘制的樱花树,参见CSDN,便想自己试试,但是画的有点丑
https://joke-lin.top/2020/02/09/2020-02-09-30OSMakeNote05-08/
这个结构体包含操作系统的基础信息
https://joke-lin.top/2018/12/07/2018-12-07-ShortestPath/
图的基础,最短路径的几种解答
单源最短路: Bellman-Ford & Dijkstra 及其简单优化 以及负圈的判断
多源最短路:Floyd-Warshall 算法的简单理解
路径还原问题
算法代码及思路主要参考:《挑战程序设计竞赛》
在此之前读者应对图已经有基础的概念,以及图的邻接表 & 邻接矩阵的表示方法
https://joke-lin.top/2019/02/21/2019-02-21-Life/
2019正月至开学前一天
2018下学期的离散70+
老弟学会吞药
没有钱是万万不能的
人老了是真的可怜
呆在家里真好
https://joke-lin.top/2020/03/12/2020-03-12-Matplotlib-DirectlyOutput-Img/
导出为ndarray格式图片
matplotlib 绘制的图线有自己的显示窗口,有时候希望在其他的UI设计中使用其绘制的图,比如PyQt,官方有一个支持QT的显示窗口类,但配置很麻烦,在这里记录一种简便的导出方式
主要思路为使用matplotlib的print_png函数将其图片数据导出到二进制流中,然后numpy从此二进制流中取出数据即可
https://joke-lin.top/2019/01/12/2019-01-12-If_I_Stay/
A Song To Share And Save
https://joke-lin.top/2020/04/02/2020-04-02-tree-diameter/
树的直径,即树中距离最远的两个节点的距离。
求解方法
选取树中的任意一个节点,计算距离它最远的节点(使用DFS或者BFS),然后以这个最远的节点为根计算距离它最远的节点。这段距离即为树的直径,根和此最远的点便是两个端点。
https://joke-lin.top/2020/04/16/2020-04-16-PAT-Advanced-1038/
题目描述
题目地址
给定一系列数字串,使用他们组成一个最小的数字
https://joke-lin.top/2019/02/24/2019-02-24-stb_image/
Github: https://github.com/nothings/stb/
stb_image
stb的库像素数据都是从左到右,从上到下存储
使用 stbi_set_flip_vertically_on_load(true); 上下翻转
使用 stbi_flip_vertically_on_write(true); 在写数据的时候翻转 (在stb_write_image中
https://joke-lin.top/2018/09/18/2018-09-18-youdao/
爬虫原理
Attention: Python3 将urlib2 urlib3 结合为urlib
Urlib:Python3中urllib详细使用方法(header,代理,超时,认证,异常处理)
urlib2 :python urllib2详解及实例(从底层说起)
基本原理
通过给网页提供一个数据,然后获取其反馈
使用到的模块
urllib.request: 访
https://joke-lin.top/2018/09/15/2018-09-15-Retro-Snake/
部分文件说明
Snakeprev.h
蛇节点声明 struct snake;
蛇存储结构链表 snake * snakelist(int,int*);
增加节点方法 void addsnake(snake *);
绘画蛇身 void drawsnake(snake *,char);
清空蛇 void clearsnake(snake *);
https://joke-lin.top/2020/05/11/2020-05-11-PAT-Advanced-1052/
题目描述
题目地址
给定内存中的链表,节点格式为(地址,值,指向下一个节点的地址),并给出开始地址,给出此链表从小到大排序后的链表。
https://joke-lin.top/2020/04/21/2020-04-25-PAT-Advanced-1044/
题目描述
题目地址
简单来说,即给定一串数字序列,以及目标值M,找出一段和为M的子串,若不存在找出大于M的最小子串
https://joke-lin.top/2020/04/03/2020-04-03-PAT-Advanced-1021/
题目描述
题目地址
一个图如果是树,给出树的直径的大小(最深),否则给出连通分量个数。
简介
林伟俊,目前就读于四川大学计算机学院,为本科生。
此博客站点旨在记录学习过程以及分享我的一些所学、所想。希望能给您带来些许帮助。
联系方式
邮箱:[email protected]
QQ:不告诉
https://joke-lin.top/2020/04/09/2020-04-09-PAT-Advanced-1026/#more
题目描述
题目地址
给定数量的乒乓球台(8:00~21:00开放)以及顾客访问时间表,确定每个顾客的服务时间(不超过2小时)以及每个球台接待的顾客数量。其中增加了VIP机制,有以下三条规则:
当一个VIP球台空的时候,排队中的第一个VIP可以优先使用
如果当前没有VIP用户等待,普通用户也可以使用VIP球台
如果VIP用户没有VIP球台可以使用,就使用普通球台
存在多个球台可以
https://joke-lin.top/2020/04/01/2020-04-01-PAT-Advanced-1020/#more
题目描述
题目地址
给定一个二叉树的后序遍历以及中序遍历的结果,求层序遍历的结果,也就是构造二叉树了
https://joke-lin.top/2020/04/21/2020-04-27-PAT-Advanced-1045/
题目描述
题目地址
和最长公共子序列很相似,不同的是这里是求串B中符合串A的数字顺序的最长串的大小(即可重复)。比如:
给定顺序A为:1、2、3,待匹配串B为:1、1、2、4、3、2
其中符合条件的串有:
1、1、2、2
1、2、2
2、3
...
https://joke-lin.top/2020/01/26/2020-01-26-30OSMakeNote04/
04 C语言和画面显示的练习
原文中作者花了很大的力气讲解C语言的有关知识,这里就不多赘述了。。
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.