你是否觉得锁是一种很神奇的东西,在并发编程中,你只需要将你的代码加上锁,就能保证代码是线程安全的(当然现实和感觉有很大差别,代码的线程安全是非常复杂的),那么,这些都是怎么做到的呢?当存在大量线程同时竞争锁时,竞争失败的锁会怎么做呢?锁又是怎么保证这一切高效的执行的呢?这篇文章将为你回答这些问题,首先我将介绍怎样实现一个正确的锁,然后介绍高效的锁应该具备的条件,最后将介绍两种常用的队列锁算法:CL...
分类:
其他好文 时间:
2014-05-12 06:49:30
阅读次数:
394
动态类型以及它提供的多态性,无疑是Python语言简洁性和灵活性的基础。
一、变量
变量创建
一个变量a,当代码第一次给它赋值时就创建了它,之后的赋值将会改变已创建的变量名的值。
变量类型
变量永远不会有任何的和它关联的类型信息或约束。变量原本是通用的,它只是在一个特定的时间点,简单的引用了
一下特定的对象而已。
变量使用
当变量出现在表达式中,它会马上被当前引用的对象所替代...
分类:
编程语言 时间:
2014-05-11 14:33:10
阅读次数:
360
水贴王问题
个人信息:就读于燕大本科软件工程专业 目前大三;
本人博客:google搜索“cqs_2012”即可;
个人爱好:酷爱数据结构和算法,希望将来从事算法工作为人民作出自己的贡献;
博客内容:水贴王问题
博客时间:2014-5-7;
编程语言:Java ;
编程坏境:Windows 7 专业版 x64;
编程工具:jdk,eclipse...
分类:
其他好文 时间:
2014-05-11 14:22:50
阅读次数:
296
今天在做右键菜单,当点击重命名进行Ajax请求时,并没有向后台发送数据而是直接跳转到了首页。朕百思不得其解,后来在前台页面发现一个问题:重命名原来就是这个href='#'惹的祸,当我点击时候,页面会跳转到'#'这个路径而不是进行Ajax请求。将上面那段代码变成重命名就好了。...
分类:
其他好文 时间:
2014-05-11 05:51:06
阅读次数:
313
//链表操作:建立、插入、删除、查找、倒置、删除等基本操作
#include
#include
typedef
struct LNode
{
int data;
structLNode *next;
}LNode,*Llist;
LNode *creat_head();//创建一个空表
void creat_list(LNode *,int);//创...
分类:
其他好文 时间:
2014-05-11 03:33:11
阅读次数:
351
不相交区间问题,贪心可水过。。。(贪心必会问题)...
分类:
其他好文 时间:
2014-05-11 03:07:37
阅读次数:
324
import java.util.Scanner;
// 并查集 判断一个图中有几个联通块
public class UnionFind {
private int[] father;//
private int count;// 分量数量
public UnionFind(int N){
count=N;
father=new int[N];
for(int i=0;i<N...
分类:
其他好文 时间:
2014-05-11 03:03:44
阅读次数:
308
Python3.2 实现基于KNN算法的数据分类...
分类:
编程语言 时间:
2014-05-11 02:59:46
阅读次数:
332
已知
1) 对于数字1 可以表达为
(1)
2) 对于数字2 可以表达为
(1,1) (2)
解释
1 + 1 = 2
3) 对于数字3 可以表达为
(1,1,1) (1, 2) (2, 1) (3)
1 + 1 + 1 = 3
1 + 2 = 3
2 + 1 = 3
求对于数字N 所有表达项...
分类:
其他好文 时间:
2014-05-11 02:27:52
阅读次数:
361
又是给女朋友做的……没有需求就没有动力这真的是一个合格的程序员么喂。
因为是在Windows下用,不能用bash也不能写Python,只好写成VBS。
第一次用VBS,这货比起Python真是难用得要命,微软太不争气了。不过也算是学了一门新技能吧。
其实这脚本一点也不健壮,文件数量过多时会堆栈溢出,文件名太长会报错,文件太大倒是没测过,想必也有问题。
她已经用完了,咱也没动力改了。...
分类:
其他好文 时间:
2014-05-11 02:02:27
阅读次数:
372