1、 求10进制数中1的数目
采用求模运算%和除法运算/,得到每个位数上1的个数
2、 判断两个单向链表是否有环
将第二个链表的尾部接到第一个链表的头部,然后判断该链表是否有环。
判断单链表是否有环:取两个头指针,步进分别为1和2;如果两者可以相等,则有环,否则无环。
3、 判断阶乘N!末尾有多少个0
将N!质因素分解为2X*3Y*5Z*…,则2*5=10,末尾0的个数取决于X和Z,而2比5多,则末尾0的个数等于Z。具体的算法:遍历1到N,通过取模运算%和除法运算/判断每个数中含有5的个数。
4、 求8位二进制数中1的个数
有如下三种方法:(1)采用求模运算%和除法运算/;(2)采用移位运算;(3)采用256位数组,用空间换时间。