- 博客(3)
- 收藏
- 关注
原创 BitSet(位图)的简单介绍和使用
一、简单介绍 BitSet顾名思义,就是用位来存储数据,即存储0/1,0/1就可以作为标志位,巧妙的利用0/1就可以解决很多不同的问题。BitSet一般用于处理海量数据,可以大大的节省空间,比如有0~99共一百个数,用int来存储,就要用32*100bit,而用BitSet来存储,只利用7bit即可,当数据量达到千万,亿级别时,BitSet的优势更明显。JDK API: BitSet类实现了一个按需增长的位向量。位Set的每一个组件都有一个boolean值。用非负的整数...
2020-06-30 18:22:37
767
原创 写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。
不能使用四则运算,但可以使用++,--,还可以使用移位运算。使用++如下:int Add(int num1, int num2) { while(num1--){ num2++; } return num2; }使用移位运算,两数异或 :每位独立相加,没有进位;两数相与:得到需要进位的位为1;左移(两数相...
2019-11-19 14:40:20
189
原创 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)
C++求解:首先想到的就是公式法,但题目要求不可以使用乘除法,那就要利用其他的操作来代替乘除。1 + 2 + 3 +...... + n = (n + 1)n / 2 = (n^2 + n)/ 2;n^2利用pow(n,2);/2利用移位操作;C++代码:int Sum_solution(int n){return (int) (pow(n,2) + n)>...
2019-11-19 11:39:55
160
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人