摘要:
题目: 输入正整数n (n<360), 输入 n度的正弦、余弦函数值。提示:使用数学函数 c语言实现 #include<stdio.h> #include<math.h> int main() { int n; double pi = acos(-1.0); scanf("%d",&n); prin 阅读全文
摘要:
1. 队列:先进先出 队列的基本操作: 入队enqueue(),放一个数据到队列尾部; 出队dequeue(),从队列头部取一个元素; 如下,和栈的对比图: 所以,队列和栈一样,也是一种操作受限的线性表数据结构。 注:作为一种非常基础的数据结构,队列的应用广泛,特别是一些具有某些额外特性的队列,比如 阅读全文
摘要:
1.栈主要包括两个操作 出栈和入栈;也就是在栈顶插入一个数据和从栈顶删除一个数据; 具有后进先出、先进后出的特性。 栈是一种操作受限的线性表,只允许在端插入和删除数据。 为什么会有栈这种数据结构? 适合特定场景。从功能上说,数组或者链表都可以替代栈,但是,因为特定的数据结构是对特定场景的抽象,而且数 阅读全文
摘要:
1.数组和链表的内存分布 数组需要一块连续的内存空间,而链表则通过“指针”将一组零散的内存块串联起来 2.三种常见的链表 单链表、双向链表、循环链表 2.1 单链表 链表通过指针将一组零散的内存块串联在一起。其中内存块称为结点,并且还有一个记录下个结点地址的指针,叫做后继指针next。 其中,第一个 阅读全文
摘要:
之前有记录一版快速排序算法。 这里记录对它优化的一个版本。 之前快速排序一个缺点,就是使用递归算法对规模非常大的数据项进行排序可能会引起栈溢出,导致存储错误。 而且上面的代码的实现方式中,对枢纽的不同的选择,会造成不一样的算法的执行效率。 理想情况下,应该选择被排序的数据项的中值数据项作为枢纽。即对 阅读全文
摘要:
快速排序算法本质上是通过把一个数组划分为两个子数组,然后递归的调用自身为每一个子数组进行快速排序来实现的。 这里首先讲递归的快速排序算法。 1.递归的排序算法 public void recQuickSort(int left, int right){ if(right-left<=0){ //如果 阅读全文
摘要:
1.数组定义 数组:是一种线性数据结构,用连续的内存空间,来存储相同类型的数据 2.线性表与非线性表 线性表:数组、链表、队列、栈等 非线性表:二叉树、堆、图等 如下图 3.数组特性 3.1 随机访问 3.1.1 数组为什么支持随机访问 因为数组是线性并且占用连续的内存空间的相同类型的数据。 3.1 阅读全文
摘要:
视图是一个虚拟表,其内容由查询定义。 视图的作用 对于视图所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自:当前或者其他数据库的一个或多个表或者视图。 视图通常用来集中、简化和自定义每个用户对数据库的不同认识。视图可用作安全机制,方法是允许用户通过视图访问数据,而不授予用户直接访问视 阅读全文
摘要:
这里讲表的一些约束。 一.主键 1). 主键的创建 示例1:在现有表创建主键 ALTER TABLE Production.TransactionHistoryArchive ADD CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIM 阅读全文