- 博客(11)
- 资源 (5)
- 收藏
- 关注
转载 字节对齐
如果体系结构是不对齐的,A中的成员将会一个挨一个存储,从而sizeof(a)为11。显然对齐更浪费了空间。那么为什么要使用对齐呢? 体系结构的对齐和不对齐,是在时间和空间上的一个权衡。对齐节省了时间。假设一个体系结构的字长为w,那么它同时就假设了在这种体系结构上对宽度为w的数据的处理最频繁也是最重要的。它的设计也是从优先提高对w位数据操作的效率来考虑的。比如说读写时.............此处
2015-03-31 22:24:35 386
原创 将字符串中的cvt(CVT)换成cvte(CVTE)and求树的节点数and斐波那契数列
将字符串中的cvt(CVT)换成cvte(CVTE) string fix(char* str, int n) { int i=0; string newStr; while(i<n) { while(str[i]!='c'&&str[i]!='C'&&i<n) { newStr+=str[i]; i++; } if(i+2<n && str[i]=='c
2015-03-15 20:33:51 852
原创 求两个单链表交点and判断链表是否有环
求单链表交点算法: 先求得两条链表各自的长度,如果最后一个节点的地址相同,则确定链表有交点。然后求出长度差值k,让长的链表指针先走k步,然后两个链表指针同时走,边走边比较,第一次相等处即是交点。 代码: struct Node { int data; struct Node * next; }; Node* FixIntersetion(Node*
2015-03-13 21:01:29 1142
原创 求二叉树深度and判断是否是平衡二叉树
int deepOfTree(BinaryTreeNode* pRoot) { if(pRoot==NULL)return 0; int leftHeight = deepOfTree(pRoot->m_pLeft); int rightHeight = deepOfTree(pRoot->m_pRight); return 1+max(leftHeight, rightHeight);
2015-03-13 13:08:24 524
原创 core文件调试
#include char* str = "test"; void core_test() { str[1]='T'; } int main() { core_test(); return 0; }
2015-03-12 11:00:03 622
原创 c程序辨别系统是16位or32位and辨别系统是大端or小端字节序
#include union U { short i; char a[2]; }; int main() { int *p; printf("%d\n",sizeof(p));//4 printf("sizeof(short):%d\n",sizeof(short));//2 union U u; u.i=0x0102; printf("%d %d\n",u.a[0],u
2015-03-11 21:24:48 1049
原创 喜刷刷
二进制中1的个数 int numberOf1(int num) { int i=1; int count=0; while(i) { if(num&i) { count++; } i=i<<1; } return count; } 选择第一个数为key,将数组分为两部分,左边小于key,右边大于key int partition(int* a, i
2015-03-09 21:53:44 645
原创 字符串常量
1.以字符串形式出现的,编译器都会为该字符串自动添加一个0作为结束符,如在代码中写 "abc",那么编译器帮你存储的是"abc\0" 2."abc"是常量吗?答案是有时是,有时不是。 当赋予数组时不是常量,例如,char str[] = "abc"的最终结果是char str[4] = {'a','b','c','\0'};str[0]='v'//正确 赋予char*时"ab
2015-03-07 16:45:24 575
转载 快速排序 优化 详细分析
目录(?)[+] 看了编程珠玑Programming Perls第11章关于快速排序的讨论,发现自己长年用库函数,已经忘了快排怎么写。于是整理下思路和资料,把至今所了解的快排的方方面面记录与此。 纲要 算法描述时间复杂度分析具体实现细节 划分 选取枢纽元 固定位置随机选取三数取中 分割 单向扫描双向扫描Hoare的双向扫描改进的双向扫描双向
2015-03-07 09:30:53 517
原创 背包问题
动态规划是用空间换时间的一种方法的抽象。其关键是发现子问题和记录其结果。然后利用这些结果减轻运算量。 背包问题: c[i][j]数组保存了1,2,3号物品依次选择后的最大价值. 这个最大价值是怎么得来的呢?从背包容量为0开始,1号物品先试,0,1,2,的容量都不能放.所以置0,背包容量为3则里面放4.这样,这一排背包容量为4,5,6,....10的时候,最佳方案都
2015-03-05 22:38:40 431
转载 动态规划
本文系转载,原文地址:http://www.cppblog.com/Fox/archive/2008/05/07/Dynamic_programming.html 以前在学习非数值算法的时候,曾经了解过动态规划算法(Dynamic programming),以下是对Wikipedia上动态规划的翻译,图也是Wikipedia上的,仓促行文,不到之处,请方家指正。 这篇文章的术语实在
2015-03-05 19:41:20 545
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人