JMM怎么解决原子性、可见性、有序性的问题? 在java中提供了一系列和并发处理相关的关键字,比如volatile、synchronized、final、juc等,这些就是java内存模型封装了底层的实现后提供给开发人员使用的关键字,在开发多线程代码的时候,我们可以直接使用synchronized等 ...
分类:
编程语言 时间:
2018-09-05 09:16:10
阅读次数:
176
计算机网络的初步认知 计算机网络的形成(阶段划分) 计算机网络的起因 美国国防部高级研究计划署(DARPA)要求研发一个新型网络“可生存系统” 通讯网络方案的设计基本问题 分组交换技术的特征: 分组交换技术需要解决的问题: 重复、丢失、乱序 新型网络“可生存系统”的成果--ARPANET ARPAN ...
分类:
其他好文 时间:
2018-09-03 02:23:08
阅读次数:
159
``` numpy中利用random类获取随机数. numpy.random.random() 生成随机浮点数 默认为生成一个随机的浮点数,范围是在0.0~1.0之间,也可以通过参数size设置返回数据的size; 生成一个随机的浮点数: import numpy n = numpy.random.... ...
分类:
编程语言 时间:
2018-08-29 14:57:21
阅读次数:
242
1.《新东方考研英语》 俞敏洪/乱序版 2015年2月第1版 1个list的单词 2.《c++语言程序设计》郑莉 董渊 何江舟 编著 清华大学出版社 2010年7月第4版 复习第十二章异常处理 3.网站https://learnopengl-cn.github.io/intro/ 学习光照部分第五节 ...
分类:
其他好文 时间:
2018-08-24 10:49:28
阅读次数:
183
本题的分块儿需要提前预处理,预处理的时候就是把每块儿内元素排序,这样在查询的时候就可以二分查找了,从而减少了查询的效率 当然对于块儿外元素还是暴力查找,最大查找2m次也就是2√n次 区间加法还是同样适用一个修改标记,但是对于首尾的不完整块儿在修改之后这两块儿可能会出现乱序的情况 重新排序一下就好了 ...
分类:
其他好文 时间:
2018-08-23 19:39:39
阅读次数:
160
1 概念梳理: 1.1 线程 1.1.1 什么是线程 线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。一个线程是一个execution context(执行上下文) ...
分类:
编程语言 时间:
2018-08-22 15:00:44
阅读次数:
162
引用:对于大规模乱序数组插入排序很慢,因为它只会交换相邻的元素,因此元素只能一点一点的从数组的一端移动到另一端。例如,如果主键最小的元素正好在数组的尽头,要将它挪到正确的位置就需要N-1次移动。希尔排序为了加快速度简单的改进了插入排序,交换不相邻的元素以对数组的局部进行排序,并最终用插入排序将局部有 ...
分类:
编程语言 时间:
2018-08-19 10:51:59
阅读次数:
131
1、要求从一个数组中获取最小的重复的数字,乱序数组,给定范围:长度n,大小0~n-1 分析题目,发现条件本身比较苛刻,说明数组是有特殊解法的,由于范围被限制在数组长度以内的大小,因此可以通过数组实现一个简单的哈希表,即将下标作为key以及value,当前位置如果不是正确的值,则去和应该所处在的位置的 ...
分类:
编程语言 时间:
2018-08-18 13:08:59
阅读次数:
147
算法描述:希尔排序是一种基于插入排序的快速排序算法,相比于传统的相邻插入,希尔排序更加适合大规模乱序数组的排序。和插入算法一样,我们也可以优化插入和移动的过程从而进一步提升算法效率。 算法图示: 希尔排序算法的实质是首先将一个大的乱序数组变成几个小的有序数组,再逐步调整数组长度。最后一步依然是做一次 ...
分类:
编程语言 时间:
2018-08-18 13:05:35
阅读次数:
172
1.《新东方考研英语》 俞敏洪/乱序版 2015年2月第1版 1个list的单词 2.《c++语言程序设计》郑莉 董渊 何江舟 编著 清华大学出版社 2010年7月第4版 学习第十章泛型程序设计与c++标准模板库的STL基础算法内容 3.网站https://learnopengl-cn.github ...
分类:
其他好文 时间:
2018-08-18 00:54:49
阅读次数:
184