算法
递归与分治 分治法的基本思想:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。 如果问题可分割成k个子问题,且这些子问题都可解,利用这些子问题可解出原问题的解,此时,分治法是可行的。 由分治法产生的子问题往往是原问题的较少模式,为递归提供了方便。 递归 定义:直接或间接调用自身的算法 优点:结构清晰,可读性强,而且容易用数学归纳法来证明算法的正确性,因此它为设计算法、调试程序带来很大方便。 缺点:递归算法的运行效率较低,无论是耗费的计算时间还是占用的存储空间都比非递归算法要多。 常见基础递归算法常见基础递归算法有:n的阶乘、斐波那契数列、汉诺塔、二分查找、全排列等 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677//n的阶乘int fac(int n){ if(n = 0 ) return...
操作系统
操作系统概述操作系统的概念操作系统(Operating System,OS)是管理计算机硬件的软件。 用户视角关注易用性而非资源利用率; 系统视角看,操作系统是资源分配器,为各个程序和用户分配资源,操作系统是控制程序,管理用户程序的执行。 定义: 操作系统包括当你预定一个操作系统时销售商发售的一切; 操作系统时一直运行在计算机上的程序,称为内核(kernel) 计算机系统的组成 硬件:为计算机提供基本的计算资源,如CPU、内存、I/O设备等; 操作系统:控制硬件,并协调各个用户应用程序的硬件使用; 应用程序:确定了用户为解决计算问题而使用这些资源的方式; 用户: 操作系统的中断处理中断: 是操作系统和硬件交互的关键部分,硬件可以通过系统总线随时发送信号到CPU触发中断,当CPU被中断时,它停止正在做的事情,并立即转到固定位置执行中断处理程序,中断处理程序是操作系统的一部分,它负责处理中断,并恢复CPU到中断前的状态。 存储结构主存、辅存 I/O结构 同步I/O:I/O 启动后,在 I/O 完成之前,控制权不会返回给用户程序。 异步I/O:I/O...