前《秒杀多线程第三篇原子操作 Interlocked系列函数》中介绍了原子操作在多进程中的作用。如今来个复杂点的。这个问题涉及到线程的同步和相互排斥,是一道很有代表性的多线程同步问题,假设能将这个问题搞清楚,那么对多线程同步也就打下了良好的基础。程序描写叙述:主线程启动10个子线程并将表示子线程序号...
分类:
编程语言 时间:
2015-06-22 17:46:44
收藏:
0 评论:
0 赞:
0 阅读:
184
零.此文动机 用了一段时间的Lua,用惯了Java C++等有Class关键字的语言,一直对Lua的中的面向对象技术感到费解,一个开源的objectlua更是看了n遍也没理解其中的原理,直到看到了Prototype-based programming一.什么是基于原型的编程 基于原型的编程是面向.....
分类:
编程语言 时间:
2015-06-22 17:45:34
收藏:
0 评论:
0 赞:
0 阅读:
231
7.5局部对象在C++语言中,对于每一个变量和对象,都有其各自的作用域和生存期,这两个概念一个是空间的,一个是时间的。对象的作用域指的是该变量的程序文本区,对象的生存期则是程序执行过程中对象存在的时间。7.5.1自动对象只有当定义它的函数被调用的时候才存在的对象称为自动对象,自动对象在每次调用函数时...
分类:
编程语言 时间:
2015-06-22 17:42:04
收藏:
0 评论:
0 赞:
0 阅读:
269
关于memcache的安装,有兴趣的朋友请参考这篇文章:http://blog.csdn.net/xifeijian/article/details/220001731、memcached 介绍1.1 memcached是什么?memcached是以LiveJournal旗下Danga Intera...
分类:
编程语言 时间:
2015-06-22 17:40:24
收藏:
0 评论:
0 赞:
0 阅读:
182
7 Tools for Data Visualization in R, Python, and JuliaLast week, some examples ofcreating visualizations with htmlwidgets and Rwere presented. Fortuna...
分类:
编程语言 时间:
2015-06-22 17:39:34
收藏:
0 评论:
0 赞:
0 阅读:
257
函数声明式functionfunname( 参数 ){ ...执行的代码}声明式的函数并不会马上执行,需要我们调用才会执行:funname();* 分号是用来分隔可执行JavaScript语句,由于函数声明不是一个可执行语句,所以不以分号结束。函数表达式var x = function( 参数 )....
分类:
编程语言 时间:
2015-06-22 17:39:24
收藏:
0 评论:
0 赞:
0 阅读:
190
关于c和cpp实现native方法的一些注释:1> 在jni.h中首先定义了C的实现方式,然后用内联函数实现了Cpp的实现方式,如下所示:const char* GetStringUTFChars(jstring str, jboolean *isCopy) /* 依赖于C方式实现Cpp */{ ....
分类:
编程语言 时间:
2015-06-22 17:37:54
收藏:
0 评论:
0 赞:
0 阅读:
238
参考: http://blog.csdn.net/yucan1001/article/details/7188267 http://blog.csdn.net/dbzhang800/article/details/7540905
分类:
编程语言 时间:
2015-06-22 17:36:34
收藏:
0 评论:
0 赞:
0 阅读:
184
声明字符串var str = "Hello, playground" //声明一个字符串
var emptyStr = ""; //声明一个空的字符串
var emptyStr1 = String(); //相等于上面的那个str.isEmpty; //判断str是不是为空false
emptyStr.isEmpty; //true字符串连接var str1 = "hel...
分类:
编程语言 时间:
2015-06-22 16:30:44
收藏:
0 评论:
0 赞:
0 阅读:
268
直接插入排序是将元素按顺序插入已经排好序的序列中。对于待插入的元素,如果比最后一个元素还大,则不用处理。否则,从后边元素开始比较,并顺次后移,直到碰到元素小于或者等于该元素。
设置第一个元素位置为哨兵,用来存放待插入元素。
#include
#include
#include
using namespace std;
#define maxn 20
typedef struct SqL...
分类:
编程语言 时间:
2015-06-22 16:28:15
收藏:
0 评论:
0 赞:
0 阅读:
160
快速排序是对冒泡排序的一种改进。快速排序是选定一个枢轴,通过一趟排序使得枢轴左侧的元素都比枢轴元素小,右边元素都比枢轴元素大,然后再递归的对两侧元素同样处理,最后达到整个序列的有序。
继续度娘盗图。。。
#include
#include
#include
using namespace std;
#define maxn 20
typedef struct SqList
{
...
分类:
编程语言 时间:
2015-06-22 16:27:04
收藏:
0 评论:
0 赞:
0 阅读:
150
简单选择排序是每次选择第i小的元素,放到第i位置。
第i小的元素只需要从未排序的元素中选出最小的就是。
#include
#include
#include
using namespace std;
#define maxn 20
typedef struct SqList
{
int r[maxn];
int Length;
}SqList;
void InitSqL...
分类:
编程语言 时间:
2015-06-22 16:25:44
收藏:
0 评论:
0 赞:
0 阅读:
264
一 函数定义
func funcName(arg1:type, arg2:type, ...)->type{
// function body
return xxx
}
说明:
func 函数生命关键字,函数类型
->type 生命返回值类型
示例:
func sayHello(personName: String) -> String {
let gre...
分类:
编程语言 时间:
2015-06-22 16:25:34
收藏:
0 评论:
0 赞:
0 阅读:
279
题意:
2台机器,n件任务,每件任务必须先在S1上做,再在S2上做。任务之间先做后做任意。求最早的完工时间。
分析:
这是一个经典问题:2台机器的情况下有多项式算法(Johnson算法),3台或以上的机器是NP-hard的。Johnson算法思想就是贪心,时间复杂度是O(nlogn) 。Johnson算法: (1) 把作业按工序加工时间分成两个子集,第一个集合中在S1上做...
分类:
编程语言 时间:
2015-06-22 16:24:24
收藏:
0 评论:
0 赞:
0 阅读:
494
归并排序,是将子序列进行两两合并,最后并为一个有序序列。
#include
#include
#include
using namespace std;
#define maxn 20
void Merge(int a[],int low,int mid,int high)
{
int i=low;
int j=mid+1;
int b[maxn];
...
分类:
编程语言 时间:
2015-06-22 16:24:04
收藏:
0 评论:
0 赞:
0 阅读:
208
swift提供三个集合类型
Array(数组)有顺序可以重复 []
Set(集合)没顺序不可以重复 {}
Dictionary(字典)键值对{}
Array(数组)创建数组/**创建一个空的Int类型的数组*/
var someInts = [Int]();/*往数组添加一个元素3*/
someInts.append(3);/*把这个数组置为空*/
someInts = [];/*创建一个Doubl...
分类:
编程语言 时间:
2015-06-22 16:23:54
收藏:
0 评论:
0 赞:
0 阅读:
328
这里记录一下无向图的广度优先遍历,无向图用邻接表表示,使用的图的示例图如下,关于图的表示可以参照博客:无向图的表示:邻接矩阵和邻接表,这里不再赘述,无向图的表示的代码被封装到头文件queue.h 中。
另外还涉及到C语言的队列问题,可以参照博客:C 循环队列实现,同样不再赘述,循环队列实现的代码被封装到头文件graph_represent.h 中。程序使用示例图:
实现要点:
每个定点有三个状...
分类:
编程语言 时间:
2015-06-22 16:21:44
收藏:
0 评论:
0 赞:
0 阅读:
412
WebGL中Shader的基础认知及使用
分类:
编程语言 时间:
2015-06-22 16:19:04
收藏:
0 评论:
0 赞:
0 阅读:
225
Python中的random模块用于随机数生成,对几个random模块中的函数进行简单介绍。如下:random.random()用于生成一个0到1的随机浮点数。如:import randomrandom.random()输出:0.3701787746508932random.uniform(a,b)...
分类:
编程语言 时间:
2015-06-22 16:17:24
收藏:
0 评论:
0 赞:
0 阅读:
191
【转】经典排序算法 - 冒泡排序Bubble sort经典排序算法 - 冒泡排序Bubble sort原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子例子为从...
分类:
编程语言 时间:
2015-06-22 16:17:14
收藏:
0 评论:
0 赞:
0 阅读:
189