for_each()算法非常灵活,允许不同方式访问、处理、修改每一个元素。UnaryProcfor_each(InputIterator beg, InputIterator end, UnaryProc op)1、 对区间[beg, end)中每一个元素调用:op(elem)2、 返回op的一个拷贝(副本),自C++11起,返回的op已被改动过
3、 op可以改动元素。
4、 op的任...
分类:
编程语言 时间:
2016-05-13 01:13:57
阅读次数:
239
在我看来,Spark编程中的action算子的作用就像一个触发器,用来触发之前的transformation算子。transformation操作具有懒加载的特性,你定义完操作之后并不会立即加载,只有当某个action的算子执行之后,前面所有的transformation算子才会全部执行。常用的action算子如下代码所列:(java版)
package cn.spark.study.core;i...
分类:
编程语言 时间:
2016-05-13 01:14:30
阅读次数:
218
排序在各次面试的过程中问道的次数不少,冒泡排序和快速排序尤多。因此做一些总结,尤其是代码部分。
1. 冒泡排序
(1)思想
在一组数中,对当前未排好序的数,自上而下地对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的数往上冒。
(2)复杂度
平均情况-O(n^2)
最坏情况-O(n^2)(逆序有序)
最好情况-O(n)(正序有序)
空间复杂度-O(1)
(3)稳定...
分类:
编程语言 时间:
2016-05-13 01:14:13
阅读次数:
275
类ReentrantLock具有完全互斥排他的效果,即同一时间只有一个线程在执行ReentrantLock.lock()方法后面的任务。这样做虽然保证了实例变量的线程安全性,但效率却是非常低下的。所以在JDK中提供了一种读写锁ReentrantReadWriteLock类,使用它可以加快运行效率,在某些不需要操作实例变量的方法中,完全可以使用读写锁ReentrantReadWriteLock来提升...
分类:
编程语言 时间:
2016-05-13 01:12:59
阅读次数:
202
本篇将介绍SpringMVC请求参数传递的几种方式。1、RequestParam注解@RequestMapping("/login")
public String login(@RequestParam(value="username", required=true) String username, @RequestParam(value="password", required=true...
分类:
编程语言 时间:
2016-05-13 01:12:09
阅读次数:
262
1.java.io.File基本的API
File(String)
long length()
long lastModified()
String getName()
String getPath()
boolean exists()
boolean dir.isFile()
boolean dir.isDirectory()
boolean mkdir()//创建一个目录...
分类:
编程语言 时间:
2016-05-13 01:11:24
阅读次数:
232
System.Timers.Timer是多线程定时器,如果一个Timer没有处理完成,到达下一个时间点,新的Timer同样会被启动,所以在使用Timer时需要注意。下面的实例显示了Timer的使用方法。using System;
using System.Threading;
using System.Windows;namespace TimerExp
{
/// ...
分类:
编程语言 时间:
2016-05-13 01:10:48
阅读次数:
205
正则还可以这样匹配。。。
geeksquiz 网站提供代码题,可用于自测一门语言的掌握情况,今天做python有了有趣的发现——原来正则还可以这样写>>>
sentence = 'cats are fast'
regex = re.compile('(?P\w+) (?P\w+) (?P\w+)')
matched = re.search(regex, sentence)
prin...
分类:
编程语言 时间:
2016-05-13 01:09:48
阅读次数:
276
自动引用计数(Automatic Reference Counting)简称ARC,是Swift对应用程序内存的跟踪和管理。跟Java里面的Gc类似,但是又不太一样。
ARC是实例的引用数为0,ARC就会销毁这个实例。
GC是当程序不能访问这个实例,称为该实例”不可达的”,GC就会负责回收这些”不可达的”的实例,回收算法很复杂,Java规范对GC的很多行为都没有进行严格的规定,不同的厂商在各自实...
分类:
编程语言 时间:
2016-05-13 01:11:24
阅读次数:
190
本例只能用于查看比较简单的网页,像是现在jsp开发的网页有很多地方时无法显示的,但这种程序还是值得学习一下的
package cn.hncu.url;
import java.util.Date;
import java.text.SimpleDateFormat;
import java.awt.event.*;
import javax.swing.*;
import javax.swin...
分类:
编程语言 时间:
2016-05-13 01:09:12
阅读次数:
224
Sorting It All Out
Time Limit: 1000MS
Memory Limit: 10000K
Total Submissions: 31994
Accepted: 11117
Description
An ascending sorted sequence of dist...
分类:
编程语言 时间:
2016-05-13 01:08:55
阅读次数:
181
package java.util;
/**
* Stack类表示了后进先出(LIFO)的一个容器对象。Stack继承自Vector并扩展了五个操作,使得Vector可以被看作是一个Stack。
* 常用的push和pop,以及获取栈顶元素的peek,测试栈是否为空的empty,一个搜索操作search并返回其与栈顶的距离
* 第一次创建的时候,栈中没有元素
* 更丰富更兼容的LIFO操...
分类:
编程语言 时间:
2016-05-13 01:11:34
阅读次数:
136
61.JAVA编程思想——共享有限资源
可将单线程程序想象成一种孤立的实体,它能遍历我们的问题空间,而且一次只能做一件事情。由于只有一个实体,所以永远不必担心会有两个实体同时试图使用相同的资源,就象两个人同时都想停到一个车位,同时都想通过一扇门,甚至同时发话。
进入多线程环境后,它们则再也不是孤立的。可能会有两个甚至更多的线程试图同时同一个有限的资源。必须对这种潜在资源冲突进行预防,否则就可能...
分类:
编程语言 时间:
2016-05-13 01:10:34
阅读次数:
167
平常我们经常都会使用到线程池,但是有没考虑过为什么需要使用线程池呢?下面我列举一下问题,大家可以思考一下
1.当前服务器的硬件环境是多少核的CPU,它和线程的关系又是什么?
2.jvm能创建多少个线程?
3.多线程主要解决什么问题?
4.你使用线程池的目的是什么?
以上几个问题都是帮助你更好的使用java的线程(还可以衍生更多的小问题,如:jvm维护线程的消...
分类:
编程语言 时间:
2016-05-13 01:07:51
阅读次数:
205
这个接口是各种List类的抽象接口,这个接口继承自Collection接口。
public interface List extends Collection
这是接口的基本信息。
int size();
这个方法返回List的元素数。
boolean isEmpty();
这个方法判断List是否为空。
boolean contains(Obje...
分类:
编程语言 时间:
2016-05-13 01:07:33
阅读次数:
188
主要总结下java的位运算符的操作。java的位运算符不紧可以提高运行效率,同时也有会意想不到的效果(java.util.ArrayDeque有很好的体现),在后续中会举例说明。
开始说位运算符之前,先简单的复习下补码的知识,然后举个简单的例子说明下计算机中的补码操作(计算机中的加减法)。
补码
计算机进行加减法操作时,都是以补码进行操作的,所以ja...
分类:
编程语言 时间:
2016-05-13 01:07:29
阅读次数:
225
通过二叉树求最大路径和的算法小问题感受到计算机科学中学会算法套路的重要性。...
分类:
编程语言 时间:
2016-05-13 01:05:14
阅读次数:
177