数据库开发基础理论知识点罗列

数据库开发基础理论知识点罗列

1. 理论

1.1 数据库相关基础知识

1.1.1 ACID以及靠什么保证ACID

1.1.2 DDL/DML/DCL/DQL

1.2 编程基础知识

1.2.1 多线程

1.2.2 c基础

1.2.2.1 static作用
1.2.2.2 ifndef/define/endif作用
1.2.2.3 include <file.h+和include “file.h”区别
1.2.2.4 全局变量和局部变量存储位置
1.2.2.5 什么是平衡二叉树
1.2.2.6 堆栈溢出引发原因
1.2.2.7 排序时间复杂度
1.2.2.8 全局变量引用方式
1.2.2.9 const作用
1.2.2.10 volatile作用及含义
1.2.2.11 结构联合的区别
1.2.2.12 内存分区方式及区别
1.2.2.13 const #define优点
1.2.2.14 数组和指针区别
1.2.2.15 bool/int/float/指针与0值比较
1.2.2.16 带参宏和函数优缺点

|带参宏|函数| |处理时间|编译时期|程序运行时| |参数类型|无类型|定义实参、形参类型| |处理过程|不分配内存|分配内存| |运行速度|不占运行时间|调用和返回占用时间|

1.2.2.17 用两个栈实现队列的功能

假设A、B两栈 入队: 将新元素push到栈A中。

出队: 判断栈B是否为空 如果为空,将栈A中所有元素依次pop出,并push到栈B 将栈B的栈顶元素pop出。

1.2.2.18 位运算
1.2.2.19 指针、函数指针、指针函数
int* a;
int a[10];
int *a[10];
int (*a)(int);
int (*a[10])(int);
1.2.2.20 宏实现加法

#define SUM(x) ((x)+(x))

1.2.2.21 单向链表删除节点
a = p->next;
p->next=p->next->next;
1.2.2.22 各种占位符
%d
%o
%x
1.2.2.23 进程间通信

2. 编程

2.1 各种排序及其时间复杂度

排序方法 平均时间复杂度 最好时间复杂度 最坏时间复杂度 空间复杂度 稳定性
冒泡排序 O(n^2) O(n) O(n^2) O(1) 稳定
选择排序 O(n^2) O(n^2) O(n^2) O(1) 不稳定
直接插入排序 O(n^2) O(n) O(n^2) O(1) 稳定
希尔排序 O(nlogn)-O(n^2) O(n^1.3) O(n^2) O(1) 不稳定
堆排序 O(nlogn) O(nlogn) O(nlogn) O(1) 不稳定
归并排序 O(nlogn) O(nlogn) O(nlogn) O(n) 稳定
快速排序 O(nlogn) O(nlogn) O(n^2) O(nlogn)-O(n) 不稳定

2.2 文件读写

2.3 各种遍历,树,图

Table of Contents