algorithm
liuxizhiyi
next time
展开
-
随机化一个数组的元素
void randShuf(int* data,int size){ const int MAXBIT=15; const int MAXRANDOM=(1U int* next=data; for(int base=2;++next!=data+size;base++){ unsigned int _Rm=MAXRANDOM;原创 2008-10-18 12:53:00 · 587 阅读 · 0 评论 -
随机数---等概率,特殊概率
给定一个函数rand()能产生0到n-1之间的等概率随机数,问如何产生0到m-1之间等概率的随机数?int random(int m,int n){ int k=rand(); int max=n-1; while(k k=k*n+rand(); max=max*n+n-1; } return k/(原创 2008-10-18 22:43:00 · 2842 阅读 · 2 评论 -
求所有位数之和能被另一个数整除的序列
//取得能被N整除的第一个数 long long getFirst(int n){ long long first=0; if(n first=n; else{ int step=n%9; int num=n/9; first=(int)pow(10.0,num);原创 2008-10-22 15:11:00 · 619 阅读 · 0 评论 -
特殊矩阵打印
本文讨论一些特殊矩阵的打印方法 int getNumberWidth(int number){//获取number的位数 int width=0; while(number){ number/=10; width++; } return width;}//n=5: //1 2 9 10 25 //4 3 8 11原创 2008-10-22 15:14:00 · 509 阅读 · 0 评论 -
remove a loop from a linked list
Lets consider an example of a linked list contained a loop:1--> 2--> 3--> 4--> 5-->6-->7 (connected back to 5)how to detect the loop and how to remove the loop from the last node of the linked lis原创 2008-10-22 22:11:00 · 531 阅读 · 0 评论