
算法
文章平均质量分 51
qq_25467523
这个作者很懒,什么都没留下…
展开
-
程序算法编程:求两个数组的交
1.给出的两个数组,求数组的交: 例如:{1,2,2,1}和{2,4},输出{2}。 方法1:数组遍历 用数组1中的值分别遍历数组2中的值,相同的值存入集合。 java代码如下: public int[] intersection(int[] nums1, int[] nums2) { // Write your code here int r原创 2016-11-08 11:11:11 · 462 阅读 · 0 评论 -
程序算法编程:移动零问题
给定一个数组,将里面的“0”元素移至数组的末尾,而其他元素相对位置不变问题。 例如: 输入{1,0,0,3,2,4} 输出{1,3,2,4,0,0} 方法1: 顺序取出数,如果是0,则与后面非零元素调换。 java代码如下: public void moveZeroes(int[] nums) { int k = 0; for(int i = 0;i < n原创 2016-11-08 20:54:51 · 453 阅读 · 0 评论 -
堆和栈
堆:heap 栈:stack 我觉得有必要好好学习下堆和栈。我相信在编程实践中我们经常会遇到这两个概念,但是其实随着现在编译器的日渐强大,以及编程语言的演进和计算机性能的大幅度提升,我们在编程过程中对于底层的实现细节越发的不敏感了,这其实是好事,有助于我们更关注与业务的实现。但是在C,C++等开发中,我们还是会和堆和栈打交道,而且随着你代码能力的提升,目前来看,我们始终还是要去了解底层的细节,所原创 2017-07-03 22:51:12 · 269 阅读 · 0 评论 -
并发和并行
并发:concurrency 并行:parallelise并发是指同时处理很多事情(同时的概念是一种假象,实际上事情还是存在这时间片段上的先后顺序,只不过时间间隔很小,以至于人无法分辨)并行是指同时执行很多事情。这是一种利用空间换取时间的方法,通过多核的空间拓展,来实现多任务同时执行。摘取一段网上形象的比喻: 你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行原创 2017-07-05 22:32:46 · 272 阅读 · 0 评论