- 博客(18)
- 资源 (5)
- 收藏
- 关注
原创 排序算法的一些总结
算法其实就是根据一组输入经过一系列的转化,得到一组输出数据,这组数据是我们想要的 算法中最常用的,也是最变化莫测的是排序算法。排序算法归结起来也就那几种。但是有的时候根据排序的需求会衍生出很多新的算法 我们写算法也就是为了达到某一目的根据已知算法改变成我们需求的算法 排序算法的几个要点: 1,比较,既然排序肯定要有一个顺序,而造成这一个顺序的前后的依据就是比较。 比较有很多种
2013-07-15 12:22:15 758
原创 算术逻辑位运算
算法结果溢出: 一个无符号数产生溢出后会从一个最大数变为最小数 有符号数溢出会修改符号位 #include using namespace std; int main() { for(int i = 1; i > 0 ; i += 1) { printf("%d \r\n",i); } return 0; } 上面代码看上去像一个死循环
2012-11-23 11:50:19 950
原创 矩阵的运算STL
矩阵在面向对象的例子中很常见 那我们也来看看: #include #include #include #include #include #include using namespace std; template class MyMatrix { public: vector >matrix; public: MyMatrix(int
2012-11-22 19:59:05 2297
原创 大整数加法和乘法STL
整型数一般是4个字节,但是有时候经常会遇到超大数的运算,系统就没办法了(现在通常的32位系统下) 因此必须自己解决,我们来定义一个大整数类来解决 MyBigNum 代码如下: #include #include #include #include #include using namespace std; class MyBigNum { de
2012-11-22 16:15:21 1712
原创 最长公共子序列STL
最长公共子序列,这个大家都熟悉,规则不说了 解决这类问题,经典的算法是动态规划方法。这种方法在求解组合最优问题常用。 使用这种方法的算法不是递归调用自身,而是采取自底向下的方式递推求值,并把中间结果存储起来以便以后用来计算所需要求的解 为求最长公共子序列,首先寻找一个求最长公共子序列长度的递推公式 令A=a1,a2,a3,...an和B=b1,b2,b3,...bn。 L[i]
2012-11-20 22:24:34 729
原创 频度和STL
算法思路: 1,设置整形数组A中元素,获得元素个数N 2,sort(A) 3,初始化查询起始指针,first->A,last->NULL,查询值find_value 4,do 5, last 6, 根据first,last查询起始指针显示查询元素及出现频度 7, first 8, if first != A+nSize
2012-11-20 20:09:40 484
原创 STL和八皇后
由于棋盘有行列之分,示例是按列坐标划分的。如果一个合适的列坐标为{1,5,8,6,3,7,2,4} 因此转化为集合X={1,2,3,4,5,6,7,8}中哪些列排列的向量符合题中要求 满足要求的向量有两点: >不能同行同列。由于在向量X中没有重复元素,保证了不能同行同列 >不能在对角线上。这一点需要函数判定,不难看出两个皇后在同一对角线上,当且仅当abs(X[i]-X[j])=abs
2012-11-19 22:59:48 548
原创 排列中的STL
给定一个n个整数的集合 X={x1,x2,x3,...xn}和整数y,找出和等于y的X的子集Y: ValidOrder函数用来判定当前布尔排列是否满足条件:遍历布尔排列,若值为1,则累加X数组对于的真实值。若最终和为y,则满足条件 用到STL中的fill()填充,是为了初始化序列 next_permutation()连续生成排列序列 #include #incl
2012-11-19 22:38:19 592
原创 管理查询系统中的STL
#pragma warning(disable:4786) #include #include #include #include #include #include #include #include using namespace std; struct Student { string sno; string sname; int
2012-11-19 16:55:44 559
原创 ini文件解析中的STL
#pragma warning(disable:4786) #include #include #include #include using namespace std; class MySection { string section; map mapkey; public: MySection(string section) { this
2012-11-18 23:23:50 681
原创 set和map中的STL
#pragma warning(disable:4786) #include #include #include #include #include #include using namespace std; class CWord { string word; public: CWord(string word) { this->word
2012-11-18 22:54:12 768
原创 多态中的STL
#include #include #include using namespace std; class Shape { public: virtual void Draw() = 0; virtual int GerMark() = 0 ; }; class Circle : public Shape { static int mark; f
2012-11-18 22:36:25 1015
原创 转型操作符
高谈阔论C++ 现在谈谈我们C++提供的类型转换,对比C这是一个改进 当年的C语言,我们处理不同类型的数据时候往往需要变为统一类型,才能计算。 分为两种方式:1,隐式类型转换(自动完成) 2,强制类型转换(手动完成) 这些转换现在被称为低阶转换,因为它的安全性和代码的可读性另很多人不爽,另外这种低级的转换相当于没有智慧的生物,不经过大脑过滤直接几乎能将任何类型转换为其他类型,当
2012-11-17 21:06:42 495
原创 高谈阔论C++
现在我们来大话C++ 一些基础的东西,不管是在C语言中,还是在C++中都很重要: 例如:指针,数组,结构和类型转换 但是到了C++中虽然语法可能有一点变化,但是不影响它们的重要性: 指针 还是那个指针,但是其影响没有减少,反而增大,空间增大也是影响增大的一种表现 引用 本质也是指针,只不过是编译器寻址,安全性比较高,反汇编可以看出它们没什么区别 类型转换
2012-11-17 20:56:23 471
原创 指针和引用
高谈阔论C++ 现在谈谈指针和引用吧,这个话题经久不衰 没有空引用之说,也就是说,引用是给别人起别名,但是这个人必须存在。 但是相反,指针就没有这个要求。 这个是两个差别之一,差别往往是区分两个不同事物的地方,但是之所以差别,也可以利用这个差别来限制另一个没有这方面的功能的地方,例如,我们不想让某个对象为null,就可以设置为引用,则不可能为空 也正是引用这个性质,导致了其定义的时
2012-11-17 20:46:00 476
原创 STL 排序算法
STL中的排序算法及其他主要包括: 1,排序 2,第n个元素 3,二分检索 4,归并 5,序结构上的集合操作 6,堆操作 7,最大和最小 8,词典比较 9,排列生成器 10,数值算法 1,排序: sort(),stable_sort(),partial_sort(),partial_sort_copy() template void sort(RanIt f
2012-11-16 18:32:10 893
原创 STL 算法
变异算法: 修改容器中的元素是主要的特点 1,复制: copy(),copy_backward() template OutIt copy(Init first, Init last , OutIt x); template BidIt2 copy_backward(BidIt1 first,BidIt1 last,BidIt2 x);
2012-11-14 16:26:51 1056
原创 个人扎记
操作系统原理中的作业、进程、线程、管程的定义: 作业: 用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合。它包括用户程序、所需数据及控制命令等。作业是由一系列有序的步骤组成的 进程: 一个程序在一个数据集合上的一次运行过程。所以一个程序在不同数据集合上运行,乃至一个程序在同样的数据集合上的多次允许都是不同的进程 线程: 线程是进程中的一个实体,是
2012-10-05 22:32:03 1260
推荐系统与深度学习--2019.pdf
2019-06-04
二维码生成工具
2013-11-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人