
算法
NIO4444
这个作者很懒,什么都没留下…
展开
-
算法系列:一个字符串反转,单词不翻转
原创 2020-09-14 23:21:01 · 419 阅读 · 0 评论 -
算法系列:字符串反转算法实现
目录 方法1 使用异或运算 方法2 遍历数组 扩展 方法1 使用异或运算 异或操作能实现交换两个变量的值而不引入第三个变量。 两个数异或的结果再与其中一个数异或的结果是另外一个数。 这涉及到了离散数学中的异或的性质: 1.交换律:A^B=B^A 2.结合律: A^(B^C)=(A^B)^C 3.恒等律:X^0=0 4.归零律:X^X=0 5.自反:A^B^B = A^0=A 根据以上性质: A=A^B B=A^B A=A^B 通过以上三步,能实现在程...原创 2020-09-14 23:27:39 · 382 阅读 · 0 评论 -
算法系列:生成100个1-100以内的不重复的随机数
算法 (1) 把N个数放到容器A(int数组)中. (2) 从N个数中随机取出1个数放入容器B(int数组)中. (3) 把容器A中最后一个数与随机抽取的数对调或者 把容器A中最后一个数覆盖随机抽取出来的数. (4) 这时从容器A(假设N个数,索引0 到 索引N-2)之间随机取一个数.再放入容器B中,重复此步骤. 说明:也就是第二次是从容器A中 第一个元素到倒数第二个元素 中随机取一个数. 这种好处是,随机数所取范围逐步缩小,而且杜绝了大数据时集合执行删除操作时产生的瓶颈. 实现...原创 2020-09-13 23:54:11 · 2062 阅读 · 0 评论