编程珠玑: 13章 搜索 13.1生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
来源:互联网 发布:青岛太阳软件 编辑:程序博客网 时间:2024/06/02 20:54
#include <iostream>#include <stdio.h>#include <set>using namespace std;/*问题:生成[0 ,maxval]范围内m各随机整数的有序序列分析:用一个set来确保不重复,用一个随机函数来确保得到指定范围内的随机数输入:100(元素最大值) 10(输出的元素个数)输出;输出10个0~100且有序的元素关键:1实现一个集合set,包含插入,有序输出到数组中class IntSetSTL{private:set<int> _datas;int _maxSize;int _maxVal;public:IntSetSTL(int maxElements , int maxVal){_maxSize = maxElements;_maxVal = maxVal;}*/class IntSetSTL{private:set<int> _datas;int _maxSize;int _maxVal;public:IntSetSTL(int maxElements , int maxVal){_maxSize = maxElements;_maxVal = maxVal;}//插入元素void insert(int t){if( size() > _maxSize){return;}_datas.insert(t);}int size(){return _datas.size();}//将元素有序输出到v数组中void report(int* v){int j = 0;for(set<int>::iterator it = _datas.begin() ; it != _datas.end() ; it++){v[j++] = *it;}}};int randRange(int min ,int max){if(min > max){int temp = min;min = max;max = min;}return ( rand() % (max - min + 1) + min );}void print(int* array , int size){if(NULL == array || size <= 0){cout << "no result" << endl;return;}for(int i = 0 ; i < size ; i++){cout << array[i] << " ";}cout << endl;}void process(){int maxVal , size;while(cin >> maxVal >> size){IntSetSTL myset(size , maxVal);int* pArr = new int[size + 1];while(myset.size() < size){int value = randRange(0 , maxVal);myset.insert(value);}myset.report(pArr);print(pArr , size);delete[] pArr;}}int main(int argc , char* argv[]){process();getchar();return 0;}
0 0
- 编程珠玑: 13章 搜索 13.1生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
- 编程珠玑: 13章 搜索 13.4使用整数结构,生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
- 编程珠玑: 13章 搜索 13.2使用线性结构,生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
- 编程珠玑: 13章 搜索 13.2使用链表结构,生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
- 编程珠玑: 12章 取样问题 12.1程序的输入包含两个整数m和n,其中m<n。输出是0~n-1范围内m个随机整数的有序列表,不允许重复-------解题总结
- 编程珠玑: 12章 取样问题 12.1程序的输入包含两个整数m和n,其中m<n。输出是0~n-1范围内m个随机整数的有序列表,不允许重复。 优化解法-------解题总结
- 编程珠玑: 12章 取样问题 12.3设计空间,程序的输入包含两个整数m和n,其中m<n。输出是0~n-1范围内m个随机整数的有序列表,不允许重复。 -------解题总结
- 编程珠玑: 12章 取样问题 12.3设计空间,程序的输入包含两个整数m和n,其中m<n。输出是0~n-1范围内m个随机整数的有序列表,不允许重复。 解法2-------解题总结
- 编程珠玑---读书笔记---生成随机整数的有序子集
- 编程珠玑第十二章 生成有序随机序列
- 编程珠玑_第十三章_生成一个随机整数的有序集合
- 编程珠玑 ~~ 排序与随机整数序列
- 生成某个范围内的随机整数公式
- js生成指定范围内的随机整数
- 生成指定范围内的整数序列
- 编程珠玑:1.6.4 如何生成位于0至n-1之间的k个不同的随机顺序的随机整数
- 编程珠玑之第一章习题4: 生成不同的随机顺序的随机整数及存储与读取
- 《编程珠玑》第12章 抽样问题笔记 生成m个0~n间的随机数
- python 4-6 如何去掉字符串中不需要的字符strip('-+*')/lstrip()/rstrip()/切片分段+/replace/sub/translate
- intrusive_ptr源码分析
- 机器学习笔记之朴素贝叶斯分类算法
- Android SVG矢量资源的使用方法
- Spring+redis的整合
- 编程珠玑: 13章 搜索 13.1生成[0 ,maxval]范围内m各随机整数的有序序列 -------解题总结
- SpringMvc+Quartz执行多次的处理
- [Shell]一个特好用的查找命令 find + grep
- 深入理解Java内存模型
- Hive分组统计前top N条记录
- 快速幂及矩阵
- java 异常抛不抛出的影响
- 关于BSP,BIOS,和bootloader区别
- JAVA移位运算与进制转换