码迷,mamicode.com
首页 > 编程语言
表达式求值 - Java实现
本程序用于计算任意四则运算表达式。如 4 * ( 10 + 2 ) + 1 的结果应该为 49。 算法说明: 1. 首先定义运算符优先级。我们用一个 Map> 来保存优先级表。这样我们就可以通过下面的方式来计算两个运算符的优先级了: /** * 查表得到op1和op2的优先级 * @param op1 运算符1 * @param op2 运算符2 * @retur...
分类:编程语言   时间:2014-06-24 22:37:29    阅读次数:217
排序(3)---------冒泡排序(C语言实现)
说到冒泡排序,大一的时候第一次学习这个排序算法,可能大家不知道,“冒泡”在我说的方言里面是吹牛逼的意思。所以就觉得这个排序算法特吹牛逼有木有。 相信大家对所有的排序算法,这个想必是最熟悉的。大学老师多次强调,去培训,讲师也会提到,这个在面试经常被问到,所以我建议大家最好把这个算法背下来,做到心中有冒泡,手上写出来 哈哈。 好了,言归正传。...
分类:编程语言   时间:2014-06-24 23:26:45    阅读次数:305
Java开发环境的基本设置
作为Java的初学者,不知道其他的初学者有没有和我一样的感受:用Java开发需要配置这么复杂的环境,太难了!第一次配置时,一团混乱,Oracle监听服务打不开了,PLSql连接不上Oracle了,等着这些都解决了,又听说还要配置Tomcat,一查,配置Tomcat之前还需要配置JDK,于是,就好像抓住了一个绳子一样,这个绳上的蚂蚱就炸锅啦!不过好在,现在基本上完成了对Java开发环境的基本设置,所...
分类:编程语言   时间:2014-06-24 19:55:40    阅读次数:357
线程池实现
基于初级的线程池优化,这里最主要的问题是解决线程id的管理问题,以及线程取消的管理 这里采用链表来管理线程id,链表的特性便于新增和删除,引进thread_revoke结构体来标记全局的取消线程信息,先分析一下线程什么时候需要取消:当任务很少,少到tasknum 这里维护一个取消队列,在线程取消时,置全局取消标志位为1,pthread_broadcast()唤醒所有线程,让在线程唤醒时会判断...
分类:编程语言   时间:2014-06-24 23:50:26    阅读次数:489
Max Points on a Line (Python)
【问题】 Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. 【思路】 对每一个点,分别计算这个点和其他所有点构成的斜率,具有相同斜率最多的点所构成的直线,就是具有最多点的直线。 【代码】 class Point: def __in...
分类:编程语言   时间:2014-06-25 19:34:29    阅读次数:246
JavaScript获取某年某月的最后一天
JavaScript获取某年某月的最后一天 1、实现源码 <!-- To change this license header, choose License Headers in Project Properties. To change this template file, choose Tools | Templates and open the template in th...
分类:编程语言   时间:2014-06-24 22:36:13    阅读次数:350
一入python深似海--python之道
python社区不乏幽默,先来看“python之道”这首诗。 导入this包: import this 输出时一首诗,这首诗总结了Python的风格,可以指导Python程序员的编程。下面是译文: The Zen of Python, by Tim Peters Python之道 Beautiful is better than ugly. 美观胜于丑陋。 Explicit i...
分类:编程语言   时间:2014-06-24 22:40:23    阅读次数:295
C++11中的mutex, lock,condition variable实现分析
本文分析的是llvm libc++的实现:http://libcxx.llvm.org/ C++11中的各种mutex, lock对象,实际上都是对posix的mutex,condition的封装。不过里面也有很多细节值得学习。 std::mutex 先来看下std::mutex: 包增了一个pthread_mutex_t __m_,很简单,每个函数该干嘛就干嘛。 class mutex...
分类:编程语言   时间:2014-06-25 19:22:54    阅读次数:338
java—servlet实现文件下载功能
最近在学javaweb技术,利用所学知识做了一个简单的项目,在服务器上实现给用户下载文件的功能。自动列出文件夹下的文件提供下载,支持中文文件名。 其中使用了tomcat来部署服务器,代码中应用了少许EL表达式和JSTL标签,使用了jsp和servlet,当然还有java和http的基础知识,但是个人觉得重点是http的Content-Disposition头信息和Content-type头信息在servlet中下载方面的应用...
分类:编程语言   时间:2014-06-24 20:09:06    阅读次数:531
AT&T汇编语言——工具及程序组成
1.开发工具 在汇编语言中,用到的工具主要用以下几个: 汇编器、连接器、调试器、编译器  因为我在这里的是AT&T汇编语言,所以工具下也都是gnu下的那些。 1.1 汇编器(as) 汇编器有很多,masm,nasm,gas等,不像高级语言,虽然都叫汇编语言,但不同的汇编器,其语法是存在很大不同的。Intel汇编的书籍到处可见,可是AT&T的却少之又少。但想看Linux内核的话,还是要对A...
分类:编程语言   时间:2014-06-24 17:58:34    阅读次数:292
Java高级应用(一)-文件目录监控服务
最近,在研究一些比较成熟的框架,这其中也发现了一些比较不错的文章,现给大家简单翻译其中的一部分(强烈建议大家看一些原版的英文文章,很有帮助)。...
分类:编程语言   时间:2014-06-24 19:15:10    阅读次数:142
Java的接口总结
Java最基本的封装是class,除此之外还有接口interface。这段时间一直在想接口有什么作用呢,有了接口有哪些好处呢。结合网络上各位大神的文章,接口的作用大概体现在以下几个方面。 1.回调 2.方法参数 3.多态 对于上面的结论,笔者自己也做了思考,并且概括为:接口是一种能力的声明或者说是一种能力的约束。从接口能力的引用方面来看,这个是能力的声明。要想被这个接口引用指向,你就必须具...
分类:编程语言   时间:2014-06-24 18:58:19    阅读次数:210
C语言中的声明与定义的区别
1、对于下面的声明语句 int a;       如果其位置出现在所有的函数体之外,那么它就被称为外部对象a的定义。这个语句说明了a是一个外部整型变量,同时为a分配了存储空间。因为外部对象a并没有被明确指定任何初始值,所以它的初始值默认为0(某些系统中的连接器对以其他语言编写的程序并不保证这一点,C编译器有责任以适当方式通知连接器,确保未指定初始值的外部变量初始化为0)。 2、又如下面的声明语...
分类:编程语言   时间:2014-06-24 20:39:46    阅读次数:211
一个使用Java jdk8中Nashorn(Java javascript引擎)设计的Web开发框架
使用Nashorn开发Web的框架,效率高...
分类:编程语言   时间:2014-06-24 19:38:19    阅读次数:191
springmvc 中model中放入枚举类型
我们直接看例子: Map mallMap = new HashMap(); mallMap.put(MallStatus.SELFMALL.toString(), MallStatus.SELFMALL.getValue()); mallMap.put(MallStatus.DELEGATIONMALL.toString(), MallStatus.DELEGATIONMALL.getV...
分类:编程语言   时间:2014-06-25 19:59:55    阅读次数:207
5种语言混合编程:C++、JS、python、Lisp、汇编
/* 混合C++、JS、python、Lisp、汇编 1种语言,5种语法 */ main { //C++ vector v; v.push(2); putsl(v.size()); if(v.count()==1) { putsl("abc"); } //JS var a=function(x){ return x*2; } putsl(a(3)); a={90...
分类:编程语言   时间:2014-06-24 20:39:10    阅读次数:307
【C语言天天练(十五)】字符串输入函数fgets、gets和scanf
引言:如果想把一个字符串读到程序中,必须首先预留存储字符串的空间,然后使用输入函数来获取这个字符串。 读取字符串输入的第一件事是建立一个空间以存放读入的字符串。 char *name; scanf("%s", name); 这段代码虽然可能通过编译,但因为name可以指向任何地方,所以它的输入值可能覆盖以前name所指位置的值。 解决办法是声明一个固定大小的字符数组,或者使用C库...
分类:编程语言   时间:2014-06-24 23:17:08    阅读次数:242
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!