`
美丽的小岛
  • 浏览: 309448 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论
文章列表
模运算即求余运算。“模”是“Mod”的音译,模运算多应用于程序编写中。 Mod的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,从孙子问题到凯撒密 ...
"差同减差,和同加和,余同取余,最小公倍加" 所谓同余问题,就是给出“一个数除以几个不同的数”的余数,反求这个数,称作同余问题。首先要对这几个不同的数的最小公倍数心中有数,下面以4、5、6为例,请记住它们的最小公倍数是60。 1、差同减差:用一个数除以几个不同的数,得到的余数,与除数的差相同,此时反求的这个数,可以选除数的最小公倍数,减去这个相同的差数,称为:“差同减差”。例:“一个数除以4余1,除以5余2,除以6余3”,因为4-1=5-2=6-3=3,所以取-3,表示为60n-3。 2、和同加和:用一个数除以几个不同的数,得到的余数,与除数的和相同,此时反求的这个数, ...
有时候人的思维会定势,这是一个很可怕的问题,特别在检查代码的时候,就是无论怎样想,也就怎样错。今天这个可怕的事情也被出现了。如下的代码: #include<stdio.h> #define N 3 int main(){ int i ,j , k; i = 0 ; j = 0 ; k = 0 ; for( ;i < N ;i++){ for( ;j < N; j++ ){ for( ;k < N ; k++){ ...
用C去操作集合,有时候觉得十分的麻烦,不过,集合又一定要用。苦思了一些日子,当集合遇到了二进制,也当二进制到了位运算。这个就很好解决。建立这样的一个模型,当集合A有元素a,就用1在a相应的位表示出来,否则就为0 。 一个例子:A={a,b,c} --------7(111)                A有一字集A1={a,c}-------------5(101) 就这样表示。 集合与二进制有一个很思意的相同点,n个元素的集合有2^n个子集;n位的二进制有2^n个表示方法,好吧,让他们对应起来吧。 对于集合B={a,b},看下面: +--------+--------+---- ...

位运算<转>

什么是位运算?     程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。比如,and运算本来是一个逻辑运算符,但整数与整数之间也可以进行and运算。举 ...

C的位结构体

    博客分类:
  • c
 学习C有些时间了,知道有结构体,但是偶然知道它还有位结构体,查了些资料,也做了一个实验。 1.概念性描述: 位结构是一种特殊的结构, 在需按位访问一个字节或字的多个位时, 位结构比按位运算符更加方便。 位结构定义的一般形式为: struct  位结构名{ 数据类型 [变量名]: 整型常数; //成员称为“位域”或者“位段”数据类型 [变量名]: 整型常数; } 位结构变量; 其中: 数据类型必须是整型(int/char/short)。 整型常数的范围是数据类型的长度, 如定义为short,则范围是1~16。变量名是选择项, 可以不命名, 这样规定是为了排列需要。 例如: 下面定义了一个位结 ...
 8皇后可以用位运算来求,有点好奇的,不过,位运算这个强大的逻辑,没有怀疑,用了n为4的,对于太大的控制台放不下。  #include<stdio.h> #define N 4 int result = 0 ; int count = 1 ; int upperlim = (1 << N) -1 ; void com(int row,int ld, int rd) ; void print_bin(int n); int main(){ com(0,0,0) ; printf("结果为:%d",result) ; ...
  /** * Hash算法大全<br> * 推荐使用FNV1算法 * @algorithm None * @author Goodzzp 2006-11-20 * @lastEdit Goodzzp 2006-11-20 * @editDetail Create */ public class HashAlgorithms { /** * 加法hash * @param key 字符串 * @param prime 一个质数 * @return hash结果 */ public static int additiveHash(String key ...
Hash Functions A comprehensive collection of hash functions, a hash visualiser and some test results [see Mckenzie et al. Selecting a Hashing Algorithm, SP&E 20(2):209-224, Feb 1990] will be available someday. If you just want to have a good hash function, and cannot wait, djb2 is one of the b ...

ELFHash

面试遇到过一个问题,怎样用字符串怎样用HASH码保存?查了一些资料,做了一个实验,是这样的。 #include<stdio.h> unsigned int ELFHash( char * str) ; void print_bin(unsigned int n) ; void print_bin2(unsigned int n) ; int main(char* arg[]){ char * str = "12345678" ; printf("String:%s",str) ; unsigned ...
本文介绍了几个比较典型的服务器评测软件,无论什么评测工具,基本的技术都是利用线程技术模仿和虚拟用户,在这里主要的难点在于测试脚本的编写,每种工具使用的脚本都不一样,但是大多数工具都提供录制功能就算是不 ...
apache tomcat联系:   Apache是普通服务器,本身只支持html即普通网页。不过可以通过插件支持php,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源。反之不然)。Apache只支持静态网页,但像asp,php,cgi,jsp等动态 ...
最近听了一门语言,叫易语言,的确是很容易上手,晚上写了一个最简单的程序。全部是中文,以后的学生就是幸福,编程的门槛又底了。很有好奇心,写的代码如下: 运行结果为:    
定义:char ch[10];char ch2[];char* str;"string"。 1.全局的变量和函数内的static变量,存放在内存堆区域。2.全局的数组和函数内定义的static的数组,存放在内存堆区域。3.局部变量,数组,存放在内存的栈区域。4.定义char ch[10]时,如果是全局或者static的,就在堆区域给他分配10byte的空间,并且如果用户没有给它初值,10byte数据全部置零。5.定义char ch[10]时,如果是局部数组(在函数内定义且不是static的),则在栈区域分配10byte的空间,如果用户没有给它初值,10byte的数据未知,为 ...

C的sizeof函数

    博客分类:
  • c
#include<stdio.h> /* 关于数据结构的求大小的情况: #pragma pack(push) #pragma pack(8) #pragma pack(pop) (1) 结构体变量的首地址能够被其最宽基本类型成员的大小所整除; (2) 结构体每个成员相对于结构体首地址的偏移量(offset)都是成员大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding); (3) 结构体的总大小为结构体最宽基本类型成员大小的整数倍,如有需要编译器会在最末一个成员之后加上填充字节(trailing padding)。 */ typede ...
Global site tag (gtag.js) - Google Analytics