- 博客(11)
- 收藏
- 关注
原创 C++文件输入输出
C++文件输入输出#include <fstream>中包含了三个类:ifstream: //读入内存ofstream: //写入存储设备fstream: //读写操作1.默认打开文件//通过默认方式打开文件,直接用文件流操作;ofstream(“filename”, [ios::in] [ios::out]);ifstream(“filename”, [ios::in] [ios::out]);fstream(“filename”, [ios::in].
2020-12-11 11:28:57 394
原创 《剑指offer》面试题8:二叉树的下一个节点
题目:给定一棵二叉树和其中的一个节点,给出中序遍历的该节点的下一个节点。树的节点不仅仅有左右孩子还有指向父节点的指针。思路:1.判断该节点是否有右孩子,如果有:右孩子的最左的节点是该节点的下一个节点。 如果没有右孩子:判断该节点的父节点的左孩子是否为该节点,否者一直向上直到父节点为空。代码如下:BinaryTree* GetNext(BinaryTree* pNode){...
2018-07-16 11:51:53 152
原创 Linux下mysql-5.6.13源码安装
1.常见错误: 1.-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH) CMake Error at cmake/readline.cmake:82 (MESSAGE): Curses library not found. Please insta...
2018-07-16 09:29:47 376
原创 《剑指offer》面试题9:两个队列实现一个栈
问题描述:用两个队列实现一个栈。思路: push:如果两个队列都为空,那么默认选择一个作为插入元素(开始的时候);如果队列有一个不为空,那么就选择不为空的作为push队列; pop:判断两个队列是否都为空,如果都为空,返回栈空;假设queue1不为空,那么先将queue1的n-1个元素删除并插入到queue2中,第n个元素便是所要出栈的元素。代码如下: 1.类的定义:class ...
2018-07-14 11:44:07 123
原创 《剑指offer》面试题3:题目二
不修改数组的条件下,找出数组中重复的数字;其中数组长度为n+1,数组值的范围1~n;思路:利用二分的思想,将数组值1~n分割为1~middle的n1,middle+1~n的n2; 从头开始遍历一遍数组,统计在1~middle范围内数组中值的个数count,如果count>middle,那么重复的数字就在该数组中(n1),否者在n2;直到end = start,找到重复的。时间复杂度为O(nl...
2018-07-13 09:10:04 525 2
原创 《剑指0ffer》-字符串处理问题
1.问题描述 实现一个对字符串的处理,将字符串多余的空格都去掉,去掉首部,尾部的字符串,中间最多一个空格;2.思路: 定义一个指针,从字符串头开始遍历,分三步走:去除头部字符串:遇到空格指针向前++,直到遇到第一个字符,将该字符覆盖掉传入字符串的首个元素去除中间字符串:如果中间有任意一个空格大于两个,指针一直++直到有字符出现去除尾部字符转:可能最后有多个空格,也可能一个空格也没有源码...
2018-07-06 13:42:30 170
原创 编写MBR
1.载入内存: 1.程序被加载器(多个函数组成的模块)从外界存储设备加载到内存中。 2.程序的指令寄存器cs:ip指向程序在内存中的起始地址。2.BIOS: 检测初始化硬件,由bios建立了中断向量表,可以实现相关的硬件io操作,其中0xF0000~0XFFFFF一共64kb,是ROM的大小存放了BIOS代码,但是在实模式下主要是对部分硬件I/O支持。 CPU中的地址总线分...
2018-07-05 21:00:30 2151
原创 bochs安装
1.安装: 源码编译:三步走config make make install 1. ./configure \ --prefix=/tmp/bochs \ --enable-debugger \ --enable-disasm \ --enable-iodebug \ --enable-x86-debugger \ --wi...
2018-07-05 17:49:24 1918
原创 进程间的关系
进程组1.每个进程都会有一个进程组,进程组是多个进程的集合,多个进程组组成一个会话。查看进程组的id,其中每个进程组都有一个组长,进程组的id就是该进程组长的id号。该进程组是否存在取决于进程组中是否有进程,与进程组长是否结束无关。2.设定进程组的id,如果pid为0,那么将调用该函数的进程的pid设置为进程组的pgid;如果pgid为0,那么将pid设定为进程组的pgid;会话1.会话是由多个进...
2018-07-02 21:15:35 3047
原创 线程详解
线程的基本概念:1.线程在Linux下是轻量级的进程,同一程序中的线程会共享同一份全局内存区,包括代码段(.text),数据段(.bss,.data),堆段;但是每一个线程都有自己独立的栈段。所有的线程栈都驻留在同一块虚拟内存。线程的基本API启动程序时产生的进程是单条线程,也叫主线程1.创建线程 #1:传出参数,表示线程的id号 #2:线程的基本属性(唯一接触到的是分离属性后面讲解)...
2018-07-02 18:17:01 141
转载 计算机加电后操作系统启动过程
计算机加电后操作系统启动过程2017-11-05 13:41 by ☆Ronny丶, 670 阅读, 0 评论, 收藏, 编辑揭开钢琴的盖子:操作系统好比一个架美丽的钢琴,我们可以用上面的琴键弹出优美的旋律。但是我们不能满足于只会弹奏,如果我们要更深入理解钢琴,必须打开钢琴的盖子,一探究竟。所以学习操作系统,不能停留上系统API的调用,需要能更好更高效的调用API,知道API的局限性与缺点,就必须...
2018-03-14 13:49:03 4764 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人