C
AdmireLinux
为自己奋斗。。。。
展开
-
AVL二叉搜索树的Rotation
Rotations in AVL TreesLL(left-left) rotation 当x位于A的左子树的左子树时,执行LL。首先定义left为A的左子节点。将A的左指针指向left的右子节点;left的右指针指向A;将A的父节点指向A的指针指向left;在LL之后,将A和left的balance factor都设为0.其他节点的balance factors均不做改变。LR(left-r原创 2017-03-17 15:27:02 · 1106 阅读 · 0 评论 -
C语言--计算程序执行时间
C语言–计算程序执行时间## gettimeofday精度1us#include<stdio.h>#include<sys/time.h>int main(){ /* 定义两个结构体 */ struct timeval start; struct timeval end; unsigned long timer; /* 程序开始之前计时start */原创 2017-03-15 21:23:14 · 19194 阅读 · 3 评论 -
hash
Selecting a Hash Function一个好的哈希函数就是近似于正态哈希映射,将元素以正态随机分布到hash table中。 h(k)=xh(k)=x其中,xx称为kk的 hash coding.通常,大部分hash方法会假定kk为一个整数,当kk不是整数时,可以将其转换为整数。 ### Division method h(k)=k mod mh(k) = k\ mod\ m 需原创 2017-03-15 17:17:09 · 647 阅读 · 0 评论 -
C语言--Set 案例
Set example: set covering集合覆盖是一个组合数学和资源选择的问题模型,主要思想是: 给定一个集合S, A1...AnA_1...A_n为S的子集所组成的集合P,集合C就是由来自P的一个或多个集合组成。集合C覆盖S是指,如果S中的每一个元素都至少包含在一个C的子集中。此外,C包含的来自P的子集越少越好。#include <stdlib.h>#include <stdio.h原创 2017-03-14 22:09:40 · 8382 阅读 · 0 评论 -
C 语言--sizeof与typedef
sizeof 与 typedefsizeof作为C语言中求取类型所占字节数的宏,经常配合malloc等使用。 typedef则是用来表明,类型别名。typedef struct ListElmt_ { void *data; struct ListElmt_ *next;}ListElmt;通过使用typedef,可以直接用ListElmt来代替struct ListElmt结构原创 2017-03-13 16:42:02 · 1191 阅读 · 0 评论 -
C语言--void指针参数
C语言–函数的传参(pointer)c语言中有一种通用指针,void * 类型指针,该指针在C中很常见,通常用于针对不同类型参数的函数。 例如,以下函数将对任何类型的数据清零。void test(void *data, size_t n){ memset(data, 0x00, n);}可以将任何类型的指针传递给test函数而不需要cast。 int ax = 10; t原创 2017-03-11 21:18:24 · 5183 阅读 · 1 评论 -
RSA算法
RSA算法参考源自阮一峰的网络日志互质 两个整数互质可以分为两种情况: 1. 两个数均为质数 2. 其中一个为质数 3. p为大于1的整数,与p-1互质 4. p为大于1的奇数,与p-2互质欧拉函数 ϕ(n):所有大于0小于等于n的整数与n互质的个数{\phi}(n):所有大于0小于等于n的整数与n互质的个数 Property: 1. ϕ(1)=1 {\phi}(1) = 1 2原创 2017-03-28 10:57:09 · 646 阅读 · 0 评论 -
C语言--指针与数组
C Pointer and Array C 语言中只有一维数组,而且数组的大小必须在编译期就作为一个常数定下来。然而,C语言中的数组元素可以是任何类型的对象,当然也可以是另外一个数组。这样,要“仿真”出一个多维数组就不是什么难事。 对于一个数组,我们只能够做两件事:确定数组的大小,以及获得指向该数组下标为0的元素的指针。至于其他有关数组的操作,哪怕咋一看是以数组下标进行运算的,实际上都原创 2017-03-09 19:08:02 · 412 阅读 · 0 评论 -
C语言--常量
C Traps and PitfallsThis is suitable for me整型常量 如果一个整型常量以0开头,那么该常量将被视作八进制数。int a = 012; // a=10;字符与字符串 字符以单引号,而字符串则为双引号char *s = "hello world\n"; /*原创 2017-03-09 19:06:35 · 381 阅读 · 0 评论 -
C 语言--运算符优先级
Operation priority in C language 运算符 结合性 () [] -> . 自左向右 ! ~ ++ – - (type) * & sizeof 自右向左 / % 自左向右 - 自左向右 << >> 自左向右 < <= > >= 自左向右 == != 自左向右 & 自左向右 ^原创 2017-03-09 19:01:37 · 446 阅读 · 0 评论 -
C 语言--函数指针形参
C语言传值与传址今天写代码,自以为只要是传递指针,就能达到自己的任何目的,比如说改变指针的所指向的内容。 一切看起来似乎很简单。#include <stdio.h>void test(char *des, char *src){ des = src;}int main(void){ char *src = "hello world!"; char *des = NUL原创 2017-03-09 18:37:38 · 894 阅读 · 0 评论 -
C语言-数据类型所占字节数
Type bytes今天特意测试了所使用电脑的各种类型所占的字节数。 在此做个记录,以便查询。首先看一下系统信息$ screenfetch ./+o+- patrick@Marina yyyyy- -yyyyyy+ OS: Ubuntu 16.04 xenial原创 2017-03-25 21:57:57 · 869 阅读 · 0 评论