/*扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A、2各4张,小王1张,大王1张。牌面从小到大用如下字符和字符串表示(其中,小写joker表示小王,大写JOKER表示大王):
3 4 5 6 7 8 9 10 J Q K A 2 joker JOKER
输入两手牌,两手牌之间用"-"连接,每手牌的每张牌以空格分隔,"-"两边没有空格,如:4 4 4 4-joker JOKER。...
分类:
编程语言 时间:
2014-06-24 23:25:30
阅读次数:
517
特定容器算法
lst.merge(lst2)
将来自lst2的元素并入到lst。这两个都必须是有序的。
lst.merge(lst2, comp)
元素将从lst2删除,第一个版本使用
lst.remove(lst2)调用erase删除掉与给定值相等(==)或令一元谓词为真的每个元素
lst.remove_if(pred)
lst.reverse() 反转...
分类:
编程语言 时间:
2014-06-25 19:32:39
阅读次数:
200
(一)
那么当程序的控制流到达这个变量定义时,变承受构造成本;当变量离开作用域时,便承受析构成本。
string encryptPassword(const std::string& password) {
using namespace std;
string encrypted;
if(password.length() < MinimumPasswordLengt) {
t...
分类:
编程语言 时间:
2014-06-24 23:24:54
阅读次数:
297
如果你的项目使用ExtJS作为表现层,你会发现,SESSION超时控制将是一个问题。
本文将就自己的经验,来解决这一问题,当然,解决问题并非只有一种方法,我只是提出我的方法。...
分类:
编程语言 时间:
2014-06-24 19:55:01
阅读次数:
284
看了2个blog后还是没闹明白 因为Django的东西 所以自己写了test的例子终于明白了
首先给出结论---->别人总结的可惜一开始没闹明白:
1. super并不是一个函数,是一个类名,形如super(B, self)事实上调用了super类的初始化函数,
产生了一个super对象;
2. super类的初始化函数并没有做什么特殊的操作,只是简单记录了类类型和具体实例;...
分类:
编程语言 时间:
2014-06-24 18:39:17
阅读次数:
342
这篇文章主要介绍了Python程序员代码编写时应该避免的17个“坑”,也可以说成Python程序员代码编写时应该避免的17个问题,需要的朋友可以参考下
一、不要使用可变对象作为函数默认值
复制代码代码如下:
In [1]: def append_to_list(value, def_list=[]):
...: def_list.append(va...
分类:
编程语言 时间:
2014-06-24 23:35:15
阅读次数:
302
Peterson's algorithm (AKA Peterson's solution) is a concurrent
programming algorithm for mutual
exclusion that allows two processes to share a single-use resource without conflict, using only shar...
分类:
编程语言 时间:
2014-06-25 19:38:19
阅读次数:
748
自定义配置文件到spring 中,有时候想做一些数据结构的配置化信息,根据业务做一个扩展。
首先:
在项目的META-INF目录下新建两个文件spring.handlers,和spring.shcemas
Spring.handlers在类org.springframework.beans.factory.xml.DefaultNamespaceHandlerResolver中已经写死...
分类:
编程语言 时间:
2014-06-25 00:32:16
阅读次数:
304
1.线程环境初始化
图13-1
Py_InitializeEx,Python会首先调用 PyInterpreterState_New创建一个崭新的PyInterpreterState对象。
图13-2
创建了PyInterpreterState(进程状态)对象之后,Python会调用PyThreadState_New创建PyThreadState(线程状态)对象
图13-3
全局变量_PyThreadState_Current维护着当前活动的线程
PyInterpreterState对象中维护着所有的PyT...
分类:
编程语言 时间:
2014-06-24 20:19:50
阅读次数:
335
#include
#include
#include
using namespace std;
void Test()
{
int ran_num = 0;
cout<<"不指定seed, ";
for(int i=0; i<10;i++)
{
ran_num = rand()%6;
cout<<ran_num<<" ";
...
分类:
编程语言 时间:
2014-06-25 20:02:59
阅读次数:
206
人生苦短,我用python,最近实习一直在用工作,因为我做的工作涉及到海量数据,程序跑下来用上代理,一个月可能也跑不完,但是我快要回去考试两周,作为一个强迫症的coder,我必须要得知我的程序怎么了!!!所以我让我的程序成功执行一段时间,但是我又是非常“懒惰”的人(其实优秀的程序员都要很“懒惰”呢!坚决写简洁的代码,如果可以,越短越好,所以前短时间写了个160行的py 2048.),看了好多版本,...
分类:
编程语言 时间:
2014-06-24 19:42:11
阅读次数:
205
C语言中宏的使用(#,##,do…while(0)宏)
1.预定义宏的使用__FILE__,__FUNCTION__,__LINE__。
#include
void fun(void)
{
char v1;
short v2;
int v3;
long v4;
printf("v1: %x\n",&v1);
printf("v2: %x\n",&v2);
print...
分类:
编程语言 时间:
2014-06-24 15:29:13
阅读次数:
214
(一)C风格旧式转型:
(T)expression
T(expression)
(二)C++提供四种新式转型:
(1)const_cast(expression):去除表达式的常量性,是C++中唯一能做此操作的转型操作符。
(2)dynamic_cast(expression):主要用来执行“安全向下转型”,即用来决定某对象是否归属继承体系中的某个类型。它是唯一无法由旧式...
分类:
编程语言 时间:
2014-06-24 20:57:53
阅读次数:
253
MAC COCOA一个简单的多线程程序[2]
使用RUNLOOP计数,实现一个时间计数器和事件at the same time 运行。
STEP 1
H
CODE:
//
// EDUAppDelegate.h
// test_runloop_multithread
//
// Created by DMD on 23/6/14.
// Copyright (c) 2014 ED...
分类:
编程语言 时间:
2014-06-24 19:50:33
阅读次数:
292
1.GIL与线程调度
Python中的线程是操作系统的原生线程,Python虚拟机使用一个全局解释器锁(Global Interpreter Lock)来互斥线程对Python虚拟机的使用
为了支持多线程机制,一个基本的要求就是需要实现不同线程对共享资源访问的互斥,所以引入了GIL。
GIL:在一个线程拥有了解释器的访问权之后,其他的所有线程都必须等待它释放解释器的访问权,即使这些线程的下一条指令并不会互相影响。
在调用任何Python C API之前,要先获得GIL
GIL缺点:多处理器退化为单处理器;优...
分类:
编程语言 时间:
2014-06-25 19:48:52
阅读次数:
358
模版分类
模板分为类模板与函数模板
函数模版:为函数写一个模版,在使用函数时需要指出类型.
Template
返回值类型函数名(形参表){.... }
类模版:为类写一个模版,在使用类时需要指出类型.
Template
class 类名{.... }
类模版内函数类外实现:
在类模板外部定义成员函数,template 函数反回类型类名::函数名(参数列表){函数体}
templ...
分类:
编程语言 时间:
2014-06-24 18:29:03
阅读次数:
254
1.声明实例变量(静态)
2.私有化构造函数
3.创建获取实例的方法
public class Singleton{
//创建实例变量
private static Singleton singleton;
//私有化构造函数
private Singleton(){
}
//创建获取实例的方法
public static Singleton getI...
分类:
编程语言 时间:
2014-06-24 18:28:19
阅读次数:
206