随笔分类 - 日常积累
二分查找的三种形式&两道力扣
摘要:前言 过年前刷Leetcode的时候遇到这样一道题目: 354. 俄罗斯套娃信封问题 - 力扣(Leetcode) 其中使用patience sorting这个算法的做法中,因为牌堆顶是有序数组,所以可以使用二分查找把时间复杂度降到对数级别,但是这个并不是需要查找某个数字所出现的位置,而是需要查找当
Java Map实现按value排序
摘要:Java Map实现按value排序 如果想按照key来排序,用TreeMap就可以;如果想实现按value排序,可以采用下面这种方式 public static void main(String[] args) { Map<String,Integer> map = new HashMap<>()
操作系统复习错题集合
摘要:操作系统复习错题集合 主要记一下这个写操作,是增删目录中的目录项 文件有逻辑结构和物理结构,逻辑结构有流式和记录式,物理结构有顺序式、索引式、链接式 UNIX题目一概背记。超级块是来描述整个文件系统信息的,可以说是一个全局的数据结构,可以把它理解成文件系统的心脏。超级块中保存了全局文件信息,
OS第四章错题补充
摘要:OS第四章错题补充 虚拟内存有三种实现方式:请求分页存储管理、请求分段存储管理、请求段页式存储管理。不管哪种方式,都需要有一定的硬件支持以下几个方面: 一定容量的内存和外存 页表或段表机制,作为主要的数据结构 中断机构,当用户程序要访问的部分未调入内存时,则产生中断 地址变换机构,逻辑地址到物理
OS第三章错题补充
摘要:OS第三章错题补充 批处理作业调度原则:公平性、极大的流量、平衡资源使用 每个进程申请该类资源最多为4,6*3=18,再加上一个额外的资源,所以20个资源完全够6个程序使用,再多就不行了 概念题。作业等待时间作为分子,当较长作业等待时间不断增大,响应比就会增大,防止了较大作业一直没办
OS第四章错题
摘要:OS第四章错题 在页式存储管理中,采用动态重定向方式,所以在地址变换机构中需要硬件;而段式存储管理中,地址变换机构中有段表寄存器,所以也会有硬件 UNIX概念题 静态重定位和静态资源分配一个意思,就是在作业被装入前就把地址或是资源都一口气分配好,之后不再变了,所以静态资源分配可以避免死锁
OS第三章错题
摘要:OS第三章错题 现在看不知道当时为啥做错了…… 这个题要做对,就要分清楚作业和进程不同的状态。作业有收容、运行、完成三种状态。其中在运行时,作业内的若干进程就是我们熟知的进程五状态模型(新建、就绪、运行、阻塞、终止)。所以本题答案就很显而易见了,如果是进程调度,那就调就绪态的进程上处理机,如
操作系统第一、二章错题
摘要:操作系统第一、二章错题 A就不解释了,用过服务器的都明白。UNIX操作系统采用以全局变量为中心的模块结构,所以导致系统结构较为复杂,表现出来就是模块间的循环调用和文件之间的全局变量问题。排除B。UNIX可以分为外壳层和内核层,内核层有硬件接口和设备驱动、OS一些核心功能(文件管理、内存管理、设备
Linux中的fd
摘要:Linux中的fd 起子 如果说系统学Linux,我其实没有这个经历,你问我xx环境在Linux内核某个发行版怎么配置,那我可能可以告诉你,但是你要问我很多kernel相关的内容,那我就不懂了。在之前的一篇美团面经里涉及到select、poll、epoll这三个方法,那这三个方法肯定就和fd离不
聊聊foobar是什么?
摘要:聊聊foobar是什么? 大一时看很多老外的文档,总是看到一个叫foobar的词,当时倒不是纠结这个词到底是什么意思,因为看到这个词使用的场景大多是代码示例段、示例变量名等一些无意义的地方,猜也能猜到这个词大概率没啥含义,可能是个拼接起来的词,更多的是一种规范,就像是Hello World或者tes
聊聊Vim的工作原理
摘要:聊聊Vim的工作原理 日常里一直在用Vim这个编辑器,前阵子学习关于Linux中的fd(文件描述符)时,发现vim的进程描述符会比上一个自动加一,后续了解到vim的工作原理后,解开了这个疑问,所以记录一下。 梳理 首先开一个连接,然后在连接1中用vim vim.txt搞一个文件出来 之后开一个连接2
湘潭大学新生匿名问答网站——解湘 项目总结
摘要:
湘潭大学新生匿名问答网站——解湘 项目总结 一.开发进度 温馨提示:左下角有音乐播放器 解湘 项目首页 大一暑假过半,7月29日建立本地工程文件 其中项目在github上经历七次push(第八次为修改配置文件,防止数据库泄露),但在本地修改次数远远大于七次。 仓库地址:Appletree24/S

哈希表实现——链表形式——人员管理系统
摘要:哈希表实现——链表形式——人员管理系统 一.简介 Java写的,一边学一边敲,比较简陋,当做个纪念。 二.代码 package com.appletree24.hashtable; import javax.swing.plaf.synth.SynthOptionPaneUI; import jav
“烫烫烫烫”是怎么来的
摘要:
大一最后一个月偶然看到这篇文章,终于解决了初学C语言时用VS的困惑 原因是如果不对变量进行初始化,VS的编译器会自动为其内存分配为0xCC 至于为什么是0xCC,这是因为栈的初始化为0xCC x86系列处理器从其第一代产品英特尔8086开始就提供了一条专门用来支持调试的指令,即INT 3,其机器码就
