基础语法和语法分析
文章平均质量分 50
edgargwj
这个作者很懒,什么都没留下…
展开
-
C/C++程序员基础:标准C++概括与总结
第一课 从C到C++一、C++语言概述C++之父:Bjarne Stroustrup1979,Cpre,C with Class1983,第一个C with Class编译器,C++命名1985,CFront 1.0,《The C++ Programming Language》1987,GNU C++1990,Borland C++1992,Microsoft C原创 2014-04-16 17:09:48 · 1229 阅读 · 0 评论 -
C/C++程序员:基本排序算法之选择排序
选择排序10 30 50 40 30 ^1)算法A.在整个序列中寻找最小元素,与首元素交换;B.在剩余序列中寻找最小元素,与次元素交换;C.以此类推,直到剩余序列中仅包含一个元素。2)评价A.平均时间复杂度:O(N^2)B.非稳定排序。C.对数据的有序性不敏感。D.交换的次数少,优于冒泡排序。原创 2014-04-29 09:50:48 · 994 阅读 · 2 评论 -
C/C++程序员:排序算法之标准C语言qsort函数简单用法介绍
标准库函数qsortvoid qsort ( void* base, // 任意类型数组的首地址 size_t nmemb, // 数组元素个数 size_t size, // 数组元素字节数 int (*compar) (const void*, const void*) // 比较函数指针);其中compar参数指向一个形如:int xxx (const原创 2014-04-29 09:59:07 · 1184 阅读 · 0 评论 -
C/C++程序员:排序算法之冒泡
冒泡排序30 20 50 40 10第一趟:20 30 40 10 50第二趟:20 30 10 40 50第三趟:20 10 30 40 50第四趟:10 20 30 40 501)算法A.相邻元素两两比较,前者大于后者,彼此交换;B.从第一对到最后一对,最大的元素沉降到最后;C.针对未排序部分,重复以上步骤,沉降次大值;D.每次扫描越来越少的元素,直至不原创 2014-04-29 09:54:06 · 634 阅读 · 0 评论 -
C/C++程序员:基本排序算法之插入排序
#include #include /* 插入排序 */void insert_sort (int data[], size_t size) { size_t i; for (i = 1; i < size; ++i) { int inserted = data[i]; size_t j; for (j = i; j > 0 && inserted < data[j-1];原创 2014-04-29 09:41:09 · 853 阅读 · 0 评论 -
C/C++程序员:基本排序算法之快速排序
快速排序10 80 30 60 50 40 70 20 90 ^10 30 40 20 50 70 90 80 60 ^ ^10 20 30 40 50 70 60 80 901)算法A.从待排序序列中任意选择一个元素,作为基准;B.将所有小于基准的元素放在基原创 2014-04-29 09:37:06 · 975 阅读 · 0 评论 -
数据结构:算法之二叉树各种遍历(申明:转自落日小屋)
树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常用。二叉树是每个结点最多有两个子树的有序树。通常子树的根被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用作二叉查找树和二叉堆或是二叉排序树。二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2的 i -1次方个结点;转载 2014-04-17 14:26:42 · 972 阅读 · 0 评论 -
C/C++程序员:模版和容器的基本应用
第十课 模板一、类型参数支持更多类型冒泡排序函数。sort.cpp二、类模板、函数模板与模板特化1.模板的两步实例化类模板------>具体类------>对象 编译期 运行期函数模板------>具体函数------>调用 编译期 运行期2.模板特化就是针对某种特定的类型,是通用模板获得相应的特殊的定义原创 2014-04-16 17:47:58 · 1121 阅读 · 0 评论 -
C/C++基本数据结构:有序二叉树的基本概念和实现
二叉树1.基本特征1)表达树形结构的最简模型,每个节点最多有两个子节点——左子节点和右子节点。2)单根。每个子节点有且仅有一个父节点,整棵树只有一个根节点。3)具有递归的结构特征,用递归的方法处理往往可以简化算法。2.基本操作:生成、遍历。3.实现要点:1)由父及子的生成顺序。2)三种遍历序前序遍历:D-L-R中序遍历:L-D-R后序遍历:L-R-D原创 2014-04-17 12:04:50 · 1610 阅读 · 0 评论 -
C/C++基本数据结构:链表的基本使用和实现
链表1.基本特征:内存中不连续的节点序列,节点之间通过指针彼此关联,有一个节点出发可以获得与其相邻的节点。2.基本操作:插入/追加、删除、遍历/伪随机访问。3.实现要点:维护节点指针之间的正确指向。4.分类:单向线性链表、单向循环链表、双向线性链表、双向循环链表、其它链表(十字链表等)代码实现:原创 2014-04-17 11:52:13 · 1254 阅读 · 0 评论 -
C/C++基本数据结构:顺序表/链表 队列
队列1.基本特征:先进先出——FIFO2.基本操作:压入(push),弹出(pop)3.实现要点:初始化空间,前指针(front)用于弹出,后指针(rear)用于压入,循环使用,判空判满。原创 2014-04-17 11:10:01 · 963 阅读 · 0 评论 -
C/C++基本数据结构:顺序表/链表堆栈
堆栈一、基础数据结构1.顺序表:数组,存储在连续的空间中,随机访问方便,空间要求高,插入删除效率低。2.链表:数据存储在不连续的节点中,各节点彼此关联,空间利用率高,插入删除效率高,随机访问不方便。二、堆栈1.基本特征:后进先出。2.基本操作:压入(push),弹出(pop)3.实现要点:初始空间,栈顶指针,判空判满。原创 2014-04-17 10:50:16 · 962 阅读 · 0 评论 -
C/C++程序员:初学者的标准C概括和总结
红色字体的知识点为重要熟练掌握,并能敲出相应代码。蓝色字体的为熟悉,下次使用时查下相应知识点能用出即可。一般黑色为了解。Day01一、C语言程序的开发周期1.编辑:编写源程序,保存退出。hello.c2.预编译:处理包含文件和宏扩展。3.编译:生成目标模块。hello.o4.链接:将多个目标模块和库链接成一个可执行程序。a.out5.载入:将可执行文件读入内存,形成进程原创 2014-04-16 11:53:51 · 1002 阅读 · 0 评论 -
正则表达式基本语法
1.正则表达式基本语法两个特殊的符号'^'和'$'。他们的作用是分别指出一个字符串的开始和结束。例子如下:"^The":表示所有以"The"开始的字符串("There","The cat"等);"of despair$":表示所以以"of despair"结尾的字符串;"^abc$":表示开始和结尾都是"abc"的字符串——呵呵,只有"abc"自己了;"notice转载 2015-07-07 17:12:45 · 1590 阅读 · 0 评论