追寻钢铁侠

文章
4
资源
1
加入时间
2年10月18天

26 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。

参考链接:https://yq.aliyun.com/articles/642782一、题目数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。二、解题思路解法一:基于Partition 函数的O(n)算法数组中有一个数字出现的次数超过了数组长度的一半。如果把这个数组排序,那么排序之后位于数组中间的数字一定就是那个出现次数超过数组长度一半的数字。也就是说,这个数字就是统计学上的...

linux系统原子操作

一、概念      原子操作提供了指令原子执行,中间没有中断。就像原子被认为是不可分割颗粒一样,原子操作(atomic operation)是不可分割的操作。      c语言中一个变量的自加1操作,看起来很简单,好像只需要一条指令而不被打断。但这个操作实现起来,CPU的执行是有一个过程的,分为读取到寄存器,寄存器数学运算,回写到内存。这个实际情况,会给我们程序编写时带来隐患,举例来说明。  ...