
c++
文章平均质量分 64
Yunlliang
这个作者很懒,什么都没留下…
展开
-
不用stl的数组插入排序
#includeusing namespace std;void InsertionSort(int a[], int n){int j,p;int temp;for (p=1;p{temp = a[p];for (j=p;j>0&&a[j-1]>temp;j--){a[j]=a[j-1];}a[j]=temp;}}原创 2014-10-21 21:55:22 · 561 阅读 · 0 评论 -
微软100题
转自july学长博客,自己保存一份以防万一。1.把二元查找树转变成排序的双向链表(树) 题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 10 / / 6 14 / / / /4 8 12 16 转换成双向链表4=6=8=10=12=14=16。 首先我们定义的二转载 2015-06-25 20:36:53 · 1728 阅读 · 0 评论 -
微软100题第51题:和为n连续正数序列
题目:输入一个正数n,输出所有和为n连续正数序列。例如输入15,由于1+2+3+4+5=4+5+6=7+8=15,所以输出3个连续序列1-5、4-6和7-8。方法一:记录序列长度,判断首项是否满足条件即可首先联想到的就是等差数列,而且方差为1的正数等差数列,我们只需要记录一个序列长度,根据等差数列公式sum = na1+n(n-1)*d/2;我们可以得到na1 = sum - n(n-原创 2015-06-24 10:51:01 · 1017 阅读 · 0 评论 -
C++中虚继承下派生类object布局
C++虚继承下派生类object布局目录一. 背景知识... 21.1. 虚函数表(vftable)21.2. 虚基表(vbtable)... 2二. 场景分析... 32.1. 全部都是虚基类... 32.2. 有的基类不是虚基类... 3 一. 背景知识如果您觉原创 2014-12-03 20:51:44 · 833 阅读 · 0 评论 -
2.1默认构造函数隐式合成
我们都知道当user没有为一个不同的类(不符合后面讨论的几种case)定义任何构造函数时,编译器会隐式的合成一个默认构造函数,但是这个函数是空的,什么操作也不做。这就是implicit trivial default constructors。但是编译器有时候也会合成另外一种默认构造函数implicit nontrivial default constructors,这种函数不是空的,他们会做原创 2014-11-28 09:18:20 · 644 阅读 · 0 评论 -
为Vs2010配置OpenGL使用环境
· 1.glut.h放到C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include\gl下。2.原创 2014-11-24 09:10:28 · 459 阅读 · 0 评论 -
排序之快速排序
#includeusing namespace std;int FastSort(int *num , int n){int x = *num;int i = 0, j = n-1;if (n>1){while(iwhile(num[j]>x&&ij--;}if (i{num[i]=num[j];}else{n原创 2014-10-21 08:16:40 · 380 阅读 · 0 评论 -
memmove函数分析
memmove函数考虑到复制过程中出现内存重叠的情况,其函数原型为void * MemMove(void * pDst, const void * pSrc, int nLength)当出现内存重叠时,必须设计复制过程, 避免数据被破坏。目标地址的内存空间首部和源地址内存空间的尾部有重叠,需要从源地址尾部开始复制, 其余时候都可以从前往后拷。void * MemMove(void原创 2014-11-26 09:46:25 · 673 阅读 · 0 评论 -
排序算法大集合,插入、选择、冒泡、希尔、堆、归并、快速排序,总有一款适合你
#include class CSort{int * m_pGivenData;const int m_iGivenDataNumber;void _PercolateDown(int * v_pGivenData, int v_iFatherNode, const int c_iGivenDataNumber ){int v_iTemp;int v原创 2014-11-04 10:57:26 · 593 阅读 · 0 评论 -
adt之链表
#include #include template struct MyNode{T element;MyNode * next;};template class MyList{typedef struct MyNode Node;typedef struct MyNode * Position, *List;List mylist;int leng原创 2014-10-28 14:50:19 · 547 阅读 · 0 评论 -
微软100题第46题:四对括号可以有多少种匹配排列方式?
题目:四对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(())分析题目可以得出两个限制条件,a:左右括号数量相同; b:从左往右数,右括号数量不能大于左括号。方法1:递归的方法,同时满足上面两个条件void matching(int left, int right, vector & src, int sum, const int N, int &cnt)原创 2015-06-25 20:28:02 · 1192 阅读 · 0 评论