【动态规划】01背包问题 问题描述有n个物品,它们有各自的体积和价值,现有给定容量的背包,如何让背包里装入的物品具有最大的价值总和?为方便讲解和理解,下面讲述的例子均先用具体的数字代入,即:eg:number=4,capacity=8i(物品编号) 1 2 3 4 w(体积) 2 3 4 5 v(价值) 3 4 5 6 总体思路...
UEFI架构 UEFI架构UEFI提供系统化的标准方法,加载驱动并管理他们之间的交互。前言:感谢uefi blogUEFI 提供了一个标准接口,以便在硬件发生变更时固件能提供足够信息而保证操作系统不受影响。它包含有芯片组和外设芯片驱动程序,并通过系统表提供引导时服务和运行时服务。图一中展示了依赖于UEFI所提供的服务来工作的操作系统装载器(即 EFI OS Loader) 是如何启动操作系统内核...
动态内存分配 动态内存分配常见的内存分配的错误先上一个内存分配的思维导图:便于联想想象,理解:首先我们介绍一下内存分配的方式:1:在静态存储区域中进行分配 内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量122:在栈中进行分配 在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时,这些存储但愿自动被释放。效率很高...
栈和队列 栈(Stack)和队列(Queue)是两种操作受限的线性表。(线性表:线性表是一种线性结构,它是一个含有n≥0个结点的有限序列,同一个线性表中的数据元素数据类型相同并且满足“一对一”的逻辑关系。“一对一”的逻辑关系指的是对于其中的结点,有且仅有一个开始结点没有前驱但有一个后继结点,有且仅有一个终端结点没有后继但有一个前驱结点,其它的结点都有且仅有一个前驱和一个后继结点。)这种受限表现在:栈的插入和...
helloworld和大小端 ”HelloWorld”:include<stdio.h>int main(){ printf(“helloworld”); return 0;}(1).#include//头文件:其作用是包含我们所需要的库函数 printf();include“max.h”//”“从自己写的文件中找到max.h(2).对于 main 函数来说,是所有函数的入口...
数组和指针 数组:数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。数组是用来存储一系列数据,但它往往被认为是一系列相同类型的变量。 所有的数组都是由连续的内存位置组成。最低的地址对应第一个元素,最高的地址对应最后一个元素。1.区分:int arr[5] = {}; arr 0x00defde4 {-858993460, -858993460, -858993460, -858993460...
虚拟内存 背景内存管理算法都是基于一个基本要求:执行指令必须在物理内存中,满足这一要求的第一种方法是整个进程放在内存中。动态载入能帮助减轻这一限制,但是它需要程序员特别小心地做一些额外的工作。指令必须都在物理内存内的这一限制,似乎是必须和合理的,但也是不幸的,因为这使得程序的大小被限制在物理内存的大小内。事实上,研究实际程序会发现,许多情况下并不需要将整个程序放到内存中。即使在需要完整程序的时候,也并不是同...
操作系统常见面试题 常见面试题:1、进程是并发过程中程序的执行过程2、进程的特征:结构特征动态性并发性独立性异步性3、临界区指在每个进程中访问临界资源的那段代码4,现在操作系统中申请资源的基本单位是进程,在CPU得到执行的基本单位是线程,进程是由程序段、数据段、PCB组成的5,对临界资源应采取互斥访问方式来实现共享6,P.V操作是一种低级进程通信原语7,对于记录性信号量,在执行一次P操作时,信号量的值应当减1,当其值...
链表 在讨论链表(linked-list)之前,需要明确几个概念:线性表(顺序表, list, linear list), 数组(array),链表(linked-list)。线性表:在中文里,线性表也叫作顺序表。在英文中,它称为list, linear list等。它是最基础、最简单、最常用的一种基本数据结构,线性表总存储的每个数据称为一个元素,各个元素及其索引是一一对应的关系。线性表有两种存储方式:...
操作系统总结 第一章 操作系统概论操作系统采用的资源管理技术 (1) 复用 操作系统让众多进程共享物理资源,这种共享称为资源复用。通过适当复用可以创建虚拟资源和虚拟机,以解决物力资源数量不足的问题。物力资源的复用共享有两种基本方法:空分复用共享和时分复用共享。 (2) 虚拟 虚拟又称虚拟性,是指操作系统中实现对计算机软硬件资源进行有效管理的技术和手段,能进一步提高操作系统为用户服务的能力和水平。虚拟的本质是对资...
图解操作系统 转自:点击打开链接重读William Stallings的Operating System的个人总结,未涉及安全和分布式部分(这部分在英文版中被阉割了)。https://my.oschina.net/pangyangyang/blog/188508https://my.oschina.net/pangyangyang/blog/188507 计算机组成 先从最简单的开画,这里计算机的组...
多态与虚函数 多态的作用:继承是子类使用父类的方法,而多态则是父类使用子类的方法。在C++中,多态有两种,一种是函数重载,一种是虚函数。函数重载发生在编译的时候,它的函数参数是不一样的。而虚函数是发生在运行的时候,它的函数原型是一样的,依靠的是指针的指向。有一篇非常好的文章介绍多态与虚函数。发一个链接在这里。http://blog.csdn.net/augusdi/article/details/3827100...
重载 函数重载一、什么是函数重载?函数重载overload是指不同的函数采用相同的函数名,彼此间通过形参列表加以区分。举例:函数名都为distance,但形参列表的个数不同;[cpp] view plain copy#include <iostream> #include <cmath> using namesapce std; double distance(float,...
构造函数与析构函数 创建一个对象时,常常需要作某些初始化的工作,例如对数据成员赋初值。注意,类的数据成员是不能在声明类时初始化的。如果一个类中所有的成员都是公用的,则可以在定义对象时对数据成员进行初始化。如:class Time{public : //声明为公用成员hour;minute;sec;};Time t1={14,56,30}; //将t1初始化为14:56:30这种情况和结构体变量的初始化是差不多的,在一...
深入了解DSP和ARM的关系(相同与区别) DSP:DSP(digital singnal processor)是一种独特的微处理器,有自己的完整指令系统,是以数字信号来处理大量信息的器件。一个数字信号处理器在一块不大的芯片内包括有控制单元、运算单元、各种寄存器以及一定数量的存储单元等等,在其外围还可以连接若干存储器,并可以与一定数量的外部设备互相通信,有软、硬件的全面功能,本身就是一个微型计算机。DSP采用的是哈佛设计,即数据总线和地址总...
操作系统学习笔记 死锁,中断,内存管理(分区置换策略,分页存储管理,页面淘汰算法,分段存储管理),进程同步和互斥,进程和线程区别,生产者消费者问题,I/O复用技术等基础概念。操作系统的资源管理功能 1. 处理机分配提出进程调度的策略给出进程调度算法进行处理机的分配2.存储管理存储分配和存储无关性存储保护存储扩展3.设备管理设备无关性设备分配,独享,共享以及虚拟分配技术设备的传输控制4.软件资源管理20世界60年代初...
操作系统原理 我们每天都同操作系统打交道,了解一些操作系统原理上的知识是绝对有必要的,它可以让你了解操作系统内部是怎么工作的,为什么会出现这样那样的问题,为我们解决这些问题提供思路。本文完全是为普通电脑用户写的,省略了所有难以理解的算法、原理,没有太多细节上的东西,只是针对普通电脑用户可能感兴趣的问题给出了实现思想。Q:什么是中断?A:中断嘛,举个容易理解的例子吧。比如莲莲和唐唐在下象棋,眼看莲莲就快招架不住了...
C++10个关键词 1、constconst本意是“不变的,常量”。C语言:(1)定义该变量为只读变量,分配内存【这里的常量只是编译器属性】;(2)const与指针的组合:常量指针、指针常量、常量指针常量;C++中:(1)定义该变量为只读变量,在没有取地址&和加extern前和宏#define作用一样,没有内存空间【常量折叠】;(2)类中常量需要再初始化列表里初始化,还有引用&;static cons...
动态规划基本入门 动态规划相信大家都知道,动态规划算法也是新手在刚接触算法设计时很苦恼的问题,有时候觉得难以理解,但是真正理解之后,就会觉得动态规划其实并没有想象中那么难。网上也有很多关于讲解动态规划的文章,大多都是叙述概念,讲解原理,让人觉得晦涩难懂,即使一时间看懂了,发现当自己做题的时候又会觉得无所适从。我觉得,理解算法最重要的还是在于练习,只有通过自己练习,才可以更快地提升。话不多说,接下来,下面我就通过一个...
总结4点对学习Linux的有帮助的建议 摘要:有些人把Linux的的的运维看作一项冗长而枯燥的工作;有些人把Linux的的的运维看作一项得力的工具如果是前者建议还是改变一下认识,不然不建议入门这行。有些人把Linux的的运维看作一项冗长而枯燥的工作;有些人把Linux的的运维看作一项得力的工具如果是前者建议还是改变一下认识,不然不建议入门这行毕竟的Linux的运维工作是对人的毅力和耐心的挑战。很多人看