随笔分类 -  算法..

算术运算的溢出问题
摘要:关于算术运算的溢出问题,曾经我也迷茫过,而且不知道为什么整型变量溢出后会是模运算的结果呢,以前还以为是不可以预测的,不过弄懂了原码、补码的概念后,就发现其实都是有规律可循的,如果你还不太清楚补码什么东西,建议先看看随笔『计算机中的原码、反码和补码』,弄清楚整型数据在计算机中是如何储存的。  在那篇文中,我们讲述了为什么我们把-1强制成无符号短整型输出后会得到65535,在这里我们不对它进行类型转换... 阅读全文
posted @ 2005-09-09 13:24 powerlc 阅读(9690) 评论(0) 推荐(1)
计算机中的原码、反码和补码
摘要:大家都知道数据在计算机中都是按字节来储存了,1个字节等于8位(1Byte=8bit),而计算机只能识别0和1这两个数,所以根据排列,1个字节能代表256种不同的信息,即28(0和1两种可能,8位排列),比如定义一个字节大小的无符号整数(unsigned char),那么它能表示的是0~255(0~28-1)这些数,一共是256个数,因为,前面说了,一个字节只能表示256种不同的信息。别停下,还是一... 阅读全文
posted @ 2005-09-09 13:22 powerlc 阅读(8990) 评论(11) 推荐(0)
常见算法基础之排序
摘要:排序:是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。(本帖只讨论内部排序)常见排序:1.插入排序:直接插入,二分插入,希尔排序。2.交换排序:冒泡排序,快速排序。3.选择排序:直接选择,竞赛树,堆排序。4.归并排序:二路,多路。*****************************************... 阅读全文
posted @ 2005-08-26 21:58 powerlc 阅读(628) 评论(0) 推荐(0)
算法 ZZ
摘要:★稀疏矩阵的快速转置算法:template<classT>SpreMatrix<T>::FastTranspos(){int*rowSize=newint[Cols];//建立辅助数组,记录原数组每列(即新数组每行)的元素个数int*rowStart=newint[Cols];//建立辅助数组,记录新数组非零元素在三元组表中的位置SpreMatrix<T>b(C... 阅读全文
posted @ 2005-08-26 21:56 powerlc 阅读(430) 评论(0) 推荐(0)
约瑟夫c++ ZZ
摘要:template<classT>cList;template<classT>classNode{friendcList<T>;public:Node(){};Node(inti):data(i){}private:intdata;Node*next,*h;};template<classT>classcList{public:cList(){firs... 阅读全文
posted @ 2005-08-26 21:54 powerlc 阅读(614) 评论(0) 推荐(0)