
计算机基础知识
刘小妞
遇见更好的自己---前端小白的成长历程,学的越多,发现自己越无知
展开
-
树
深度:由节点到根经过的边的数目,根节点的深度为0高度:树中所有节点深度最大值称为树的高度度:一个节点的孩子总数先序遍历:先访问根节点,然后访问左子树和右子树 先沿着最左侧通路自顶向下访问沿途节点,然后自底向上 遍历 这些节点的右子树后序遍历:先访问左子树,在访问右子树,最后访问根中序遍历:先访问左子树,访问根,然后访问右子树广度优先遍历/层次遍历:先上后下,先左后右完原创 2016-04-08 21:39:03 · 353 阅读 · 0 评论 -
操作系统--处理调度与死锁
1. 处理机的调度层次(1) 高级调度,又称为作业调度或者长程调度,将作业调入内存作业:除了程序和数据,还有一份作业说明书。批处理系统以作业为基本单位从外存调入内存的。(2) 低级调度,又称为进程调度或者短程调度,调度对象是进程(或内核级线程)进程调度的方式:非抢占式和抢占方式非抢占式特点:实现简单,系统开销小,适用于大多数批处理系统抢占式:防止长进程长原创 2016-03-04 16:34:27 · 474 阅读 · 0 评论 -
操作系统-----进程管理
1. 程序并发执行的特征:间断性,失去封闭性,不可再现性。为使程序可以独立运行,需要配置进程控制块(PCB),由程序段,数据段,PCB构成进程实体。2. 进程:进程实体的一次执行过程。动态性是进程的最基本特征。并发性:多个进程实体同存于内存中,能在一段时间内同时运行。独立性:进程实体是一个能独立运行,独立分配资源,独立接受调度的基本单位。异步性:进程按照独立的,原创 2016-03-03 21:30:19 · 521 阅读 · 0 评论 -
操作系统 发展
1.操作系统的目标 (1)有效性 a.提高系统资源的利用率 b.提高系统的吞吐量 (2)方便性(3)可扩充性(4)开放性2.操作系统的作用 (1)OS作为用户与计算机硬件系统之间的借口(2)OS作为计算机系统资源的管理者(处理器,存储器。I/O设备,信息)(3)OS实现了对计算机资源的抽象3.操作系统的发展过程 1.无操作系统的计算机原创 2016-03-03 19:12:38 · 647 阅读 · 0 评论 -
读书笔记---计算机网络基本概念
1.OSI体系结构:物理层,数据链路层,网络层,运输层,会话层,表示层,应用层 2.TCP/IP体系结构:网络接口层,网际层,运输层,应用层 3.应用层:直接为用户的应用提供服务 4.运输层:负责两个主机中进程之间的通信提供服务,主要协议 传输控制协议TCP–面向连接的,数据传输的单位是报文段,能够提供可靠的交付。 用户数据报协议UDP–无连接的,数原创 2016-04-19 11:19:20 · 445 阅读 · 0 评论 -
计算机网络知识点总结
1.OSI,TCP/IP,五层协议的体系结构,以及各层协议 OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。 TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。 五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。 每一层的协议如下: 物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器) 数据链路:PPP、F转载 2016-03-31 19:05:15 · 667 阅读 · 1 评论 -
输出字符串的全排列
参考文章:http://blog.youkuaiyun.com/hackbuteer1/article/details/7462447全排列就是从第一个数字起每个数分别与它后面的数字交换#include<iostream>using namespace std;#include<assert.h>void Permutation(char* pStr, char* pBegin){ assert(原创 2016-09-27 20:48:01 · 541 阅读 · 0 评论 -
C++:const和sizeof
x=(y&z) 首先y和z按位与,结果赋值给x. 假设y=z=3;则y的二进制表示为0011,按位与后,结果还是3,所以x=3 2.x=(y&&z) y和z进行与运算,同时为真,则结果为1,否则结果为0 假设y=z=3,则x=1; 3.const和 *用法int b=500;const int *a=&b; //情况1int const *a=&b; //情况2int * const原创 2016-06-10 16:38:48 · 892 阅读 · 0 评论 -
内联函数和宏定义
内联函数和宏定义的区别 内联函数和普通函数相比可以加快程序的运行速度,因为不需要中断调用,在编译的时候内联函数直接被镶嵌在目标代码中,而宏只是一个简单的替换。 内联函数需要做参数类型的检查,这是内联函数跟宏比的优势 inline是指嵌入代码,就是在调用函数的地方不跳转,而是直接把代码写到那里去。对于短小代码来说inline增加空间消耗换来的是效率的提高。inline在和宏相比没有付出额外的代价原创 2016-06-10 16:46:24 · 347 阅读 · 0 评论 -
指针和引用
1.指针和引用的差别 (1)非空区别:任何情况下都不能使用指向空值的引用。一个引用总是指向某些对象。如果声明一个变量并让它指向一个对象,但是该变量某些时候可能也不指向任何对象,这时应该把变量声明为指针,这样可以赋空值。引用不允许指向空值。 (2)合法性区别:使用引用之前不需要测试它的合法性,相反,指针应该总是被测试,防止其为空 (3)可修改区别:指针可以被重新赋值以及指向另一个不同的对象,但是原创 2016-06-10 22:00:40 · 500 阅读 · 0 评论 -
this指针
对一个类的实例来说,你可以看到它的成员函数,成员变量,但是实例本身呢?this指针就是这样一个指针,它时时刻刻指向这个实例本身 (1)this只能在成员函数中使用,全局函数,静态函数都不能使用this (2)this在成员函数的开始前构造,在成员函数结束后清除。这个生命周期同任何一个函数的参数是一样的,没有任何区别。当调用一个类的成员函数时,编译器将类的指针作为函数的this参数传递进去。 (原创 2016-06-11 11:16:23 · 312 阅读 · 0 评论 -
函数指针,指针数组和数组指针
1.写出函数指针,函数返回指针,const指针,指向const的指针,指向const的const指针void (*f) ()//函数指针void * f()//函数返回指针const int *//const指针int * const //指向const的指针const int * const //指向const的const指针2.float (**def)[10];//def是一个二级指针原创 2016-06-11 11:06:58 · 296 阅读 · 0 评论 -
数据库--关系数据结构
1.域:一组具有相同数据类型值的集合 2.若关系中某一个属性组的值能唯一的标识一个元组,则称该属性为候选码 若一个关系中有多个候选码,则选定一个为主码 候选码的属性为主属性,不包含在任何候选码中的属性称为非主属性 3.关系可以有三种类型:基本关系,查询表和视图表 基本表时实际存在的表,它是实际存储数据的逻辑表示 查询表是查询结果对象的表 视图表是有基本表或其原创 2016-05-03 21:16:52 · 651 阅读 · 0 评论 -
数据库---那些不允许更新的视图
1.若视图是由两个以上基本表导出的,则此视图不允许更新2.若视图的字段来自字段表达式或常数,则不允许对此视图执行INSERT和UPDATE操作,但允许执行DELETE3.若视图字段来自聚集函数,则此视图不允许更新4.若视图定义中含有GROUP BY 子句,则此视图不允许更新5.若视图中含有DISTINCT语句,则此视图不允许更新6.若视图定义中含有嵌套查询,并且内层查询的FRO原创 2016-05-04 22:33:43 · 6684 阅读 · 0 评论 -
数据库安全--授权GRANT和回收REVOKE
1. GRANT <权限> ON <对象类型> <对象名> TO <用户> [WITH GRANT OPTION] 如果指定了WITH GRANT OPTION子句,则获得某种权限的用户还可以把这种权限再授予其他用户,允许用户传递权限,但是不允许循环授权。例1:把查询Student表的权限授给用户U1GRANT SELECTON TABLE Student原创 2016-05-05 11:09:25 · 8160 阅读 · 1 评论 -
几种常见的存储方式
数组:连续存储,遍历快且方便,长度固定,缺点移除和添加 需要迁移n个数据或者后移n个数据 链表:离散存储,添加删除方便,空间和时间消耗大,双向链表比单向的更灵活,但是空间耗费也更大 Hash表:数据离散存储,利用hash算法决定存储位置,遍历麻烦。以java的HashMap为例 二叉树:一般的查找遍历,有深度优先和广度优先,遍历分前序、中序、后序遍历,效率都差不多,但是如果数据经过排序,原创 2016-04-15 20:42:28 · 2336 阅读 · 0 评论 -
MySQL PHP基本指令
1. RDBMS即关系数据库管理系统(Relational Database Management System)的特点: (1)数据以表格的形式出现 (2)每行为各种记录名称 (3)每列为记录名称所对应的数据域 (4)许多的行和列组成一张表单 (5)若干的表单组成database 2.使用PHP脚本连接MySQLmysqli_connect(server,user,password,原创 2016-05-24 14:23:42 · 512 阅读 · 0 评论 -
数据库常见错误及解决办法
1.Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in D:\wamp\wamp64\www\library\admin\book_add.php on line 70 错误:mysqli_fetch_array()期望一个结果集,却收到一个boolean,$result =原创 2016-05-14 16:20:23 · 3989 阅读 · 0 评论 -
数据库--并发控制
1.并发操作带来的数据不一致主要包括:丢失修改,不可重复读,读“脏”数据 (1)丢失修改:两个事务T1,T2读入同一数据并修改,T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失 (2)不可重复读:事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取的结果。 (3)读脏数据:事务T1修改某一数据,并将其写回磁盘,事务T2读取同一数据后,T1由于某种原因被撤销,这是T1已经恢原创 2016-05-05 19:51:16 · 473 阅读 · 0 评论 -
数据库--数据库恢复技术
1.事务:用户定义的一个数据库操作序列,这些操作要么全做要么全部不做,是一个不可分割的工作单位 2.事务的特性:原子性(Atomicity),一致性(Consistency),隔离性(Isolation),持续性(Durability) 原子性:要么全做,要么全不做 一致性:事务的执行结果必须是使数据库从一个一致性状态变到另一个一致性状态 隔离性:一个事务的执行不能被其他事务干扰,即一个事务原创 2016-05-05 19:37:16 · 1119 阅读 · 0 评论 -
数据库--范式
1.第一范式(1NF):每一个分量必须是不可分的数据项 如果数据库表中的所有字段值都是不可分解的原子值 2.完全依赖:X决定Y,但是X的任何一个真子集都都不能决定Y 例如:(Sno,Cno)–>Grade 是完全依赖 (Sno,Cno)–>Sdept 部分依赖,因为Sno–>Sdept,而Sno是(Sno,Cno)真子集 3.包含在任何一个候选码中的属性称为主属性,不包原创 2016-05-05 19:00:47 · 368 阅读 · 0 评论 -
数据库--触发器
1.触发器是用户定义在表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增,删,改操作均由服务器自动激活相应的触发器。CREATE TRIGGER <触发器名>{BEFORE | AFTER} <触发事件> ON <表名>FOR EACH {ROW | STATEMENT}[WHEN <触发条件>]<触发动作体>创建表的用户才可以在表上创建触发器,一个表只能创建一定数量的触发器 同原创 2016-05-05 16:35:39 · 687 阅读 · 0 评论 -
数据库--完整性
1.实体完整性 实体完整性在CREATE TABLE 中用PRIMARY KEY定义,对单属性构成的码有两种说明方法,一种是列级约束条件,一种是表级约束条件。对多个属性构成的码只能是表级约束条件。CREATE TABLE Student(Sno CHAR (9) PRIMARY KEY,Sname CHAR (20) NOT NULL,Ssex CHAR(2),Sage SMALLINT原创 2016-05-05 14:47:05 · 677 阅读 · 0 评论 -
数据库基本概念
1.数据:Data 数据库:DataBase DB 数据库管理系统:DataBase Management System DBMS 数据定义语言:Data Definition Language DDL 数据操纵语言:Data manipulation Language DML 数据库管理员:DataBase Administrator DBA 2. 数据管理技术发展:人工管理阶段原创 2016-05-03 20:18:24 · 493 阅读 · 0 评论 -
数据库语言---SQL基本用法1
1.SQL:Structured Query Language 结构化查询语言2.数据查询(Data Query)QL数据操纵(Data Manipulation)DML数据定义(Data Definition)DDL数据控制(Data Control)DCL3.SQL的主要特点综合统一,高度非过程化,面向集合的操作方式,既是独立的语言又是嵌入式语言,语言简洁,易学易用4.外模式:视图和部分原创 2016-05-05 11:21:31 · 700 阅读 · 0 评论 -
数据库语言---SQL基本用法2(查询)
1.SELECT [ALL | DISTINCT] <目标列表达式>FROM <表名或视图名>[WHERE <条件表达式>][GROUP BY [列名1] [HAVING <条件表达式>]][ORDER BY <列名2> [ASC | DESC]];根据WHERE子句条件表达式,从FROM指定的基本表或视图中找出满足条件的元组如果有GROUP BY ,则将结果按照列名值进行分组,该列值相等原创 2016-05-05 11:15:39 · 669 阅读 · 0 评论 -
数值的整数次方
bool g_InvalidInput=false; double Power(double base, int exponent){ g_InvalidInput=false; if(equal(base,0.0)&& exponent<0){ g_InvalidInput=true; return 0.0; } un原创 2016-09-07 09:50:29 · 256 阅读 · 0 评论