- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 4、线程安全_Lock
Synchronized的缺陷Synchronized同步方法或代码块,在线程发生阻塞(等待阻塞wait、同步阻塞-互斥锁、其他阻塞-sleep、yield、join、I/O请求)时,不会释放所持有的锁,影响程序的运行效率。而Lock可以手动释放锁。Lock与Synchronized对比Lock提供了比synchronized更多的功能。但是要注意以下几点:1)Lock不是
2016-07-25 21:41:54 343
原创 3、线程安全_synchronized
线程安全性概念:一个类或程序在多线程环境下,其行为与预期结果一致的特性。 何时会产生线性安全问题?当多个线程同时访问临界资源时(一个对象、一个文件、一个数据库、对象的属性)会导致程序运行结果与预期结果不同,即出现线性安全问题。临界资源:在一段时间内只允许一个线程访问的资源注:不过,当多个线程执行一个方法,方法内部的局部变量并不是临界资源,因为方法是在栈上执行的,而Java栈
2016-07-25 21:24:20 349
转载 实例详解SpringMVC配置与使用
MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller).通过分层使开发的软件结构更清晰,从而达到开发效率的提高,可维护性和扩展性得到提高.Spring提供的MVC框架是在J2EE Web开发中对MVC模式的一个实现,本文通过实例讲解一下Spring MVC 的使用.
2016-07-24 14:32:02 2400
原创 关于数组操作的常见题型
一、数组操作缺陷:创建数组时,必须指定数组的容量大小,然后根据数据大小分配内存。所以空间效率不高,经常会有空闲的区域未得到充分利用。优点:可在O(1)时间内读/写任何元素,利用数组来实现哈希表二、考察内容1. 排序插入排序(直接插入、折半插入、希尔排序)3种:时间复杂度O(n^2),空间复杂度O(1)交换排序(冒泡排序:时间复杂度O(n^2),空间复杂度O(1)
2016-07-19 15:24:13 1860
原创 有关链表的常见题型
一、线性表基本概念1.1 顺序存储—顺序表:线性表的顺序存储又称为顺序表,用一组地址连续的存储单元,一次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素物理位置也相邻。优点:可以进行随机访问,只要知道下标索引即可在O(1)时间内找到指定元素。缺点:插入和删除需要移动大量元素。基本操作:插入、删除、查找(二分查找)、排序(归并排序)下一篇重点讲关于数组的常见题型1.2 链
2016-07-17 18:58:06 1834
原创 关于二叉树的常见题型
一、二叉树相关概念1.1 基本术语结点的度:一个结点的子结点的个数称为结点的度。树的度:树中结点的最大度数为树的度树的深度(高度):树中结点的最大层数,从1开始。1.2 二叉树分类满二叉树:一颗高度为h,并且含有2^h-1个结点的二叉树称为满二叉树。即树中每一层都含有最多的节点。除叶子节点每个节点的度都为2。完全二叉树:当高度为h,具有n个结点的二叉树,
2016-07-16 20:41:19 2989
转载 TCP/IP协议簇分层详解
TCP/IP 和 ISO/OSI ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是国际标准化组织(ISO)提出的一个试图使各种计算机在世界范围内互连为网络的标准框架,简称OSI。 TCP/IP协议模型(Transmission Control Pro
2016-07-10 15:41:16 14431 2
转载 SQL With (递归CTE查询)
指定临时命名的结果集,这些结果集称为公用表表达式 (CTE)。该表达式源自简单查询,并且在单条 SELECT、INSERT、UPDATE 或 DELETE 语句的执行范围内定义。该子句也可用在 CREATE VIEW 语句中,作为该语句的 SELECT 定义语句的一部分。公用表表达式可以包括对自身的引用。这种表达式称为递归公用表表达式。语法
2016-07-08 18:50:01 13596
原创 Sql的递归查询
Sql递归原理递归最少包括两个查询(也被称为成员)。第一个查询为定点成员,定点成员只是一个返回有效表的查询,用于递归的基础或定位点。 第二个查询被称为递归成员,使该查询成为递归成员的是对递归引用时触发(递归表.id与该表的pid)。在逻辑上,可以将其理解为是前一个查询语句的子集。 递归查询没有显式的递归终止条件,只有当第二个递归查询返回空结果集或是超出了递归次数的最大限制时才停止递归。递归次数上
2016-07-08 18:39:46 19460 1
原创 Union 和Union All区别
适用于:当需要将两个select语句的结果作为一个整体显示出来,就需要用到union或者union all关键字。union(或称为联合)的作用是将多个结果合并在一起显示出来。区别:Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序; Union All:对两个结果集进行并集操作,包括重复行,不进行排序; Intersect:对两个结果集进行交集操作,不包括重复行,同时进行默
2016-07-08 17:52:05 416
转载 Java之美[从菜鸟到高手演变]系列之博文阅读导航
在阅读的过程中有任何问题,请联系:egg。邮箱:xtfggef@gmail.com 微博:http://weibo.com/xtfggef QQ群:169480361原文:http://blog.csdn.net/zhangerqing/article/details/8245560#commentsJava初级篇 Java之美[从菜鸟
2016-07-07 12:27:11 365
原创 LeetCode—Level Order
Qustion: 深度遍历二叉树。 Given binary tree [3,9,20,15,7null,null], 3 / \ 9 20 / \ 15 7 return its level order traversal as: [ [3], [9,20], [15,7] ] Idea: 采用队列,但是根据其返回
2016-07-07 11:16:04 320
原创 LeetCode—Tree Depth
MaxDepth求二叉树的最大深度(递归求 左子树、右子树,两者的最大值即为该树的最大深度)public int maxDepth(TreeNode root) { if(root==null){ return 0; } return maxDepthRecursion(root, 1);}public int maxDepthRecursion(TreeNo
2016-07-07 11:05:24 322
原创 LeetCode—SameTree
Question: 问题:给定两个树,判断是否相等(结构相同且值相同) Idea: (1)处理树的问题,首先判断是否为空,是否只有一个根节点。 (2)特殊情况:两棵数均为空,一棵树为空,只有根节点时是否相等 (3)一般情况:判断是否相等,则应判断节点+左子树+右子树是否均相等。因此是一个递归的过程。根据left&&right判断 因此递归函数需要携带left和right的值。public
2016-07-07 10:57:14 311
原创 LeetCode—hasPathSum
Question: 给定一个二叉树和一个整数,判断所有路径中,路径和是否有等于这个整数的。 例如 5 / \ 4 8 / / \ 11 13 4 / \ \ 7 2 1 sum=22 ,判断是否存在一条
2016-07-07 10:46:58 716
原创 LeetCode—Sum Root to Leaf Numbers
Question: Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.An example is the root-to-leaf path 1->2->3 which represents the number 123. Find the to
2016-07-07 10:40:44 204
原创 LeetCode—Construct BinaryTree By PreOrder and InOrder
Question: 通过二叉树的前序遍历序列、中序遍历序列构造二叉树。 Ideas: 前序遍历(根左右),中序遍历(左根右),根据前序遍历序列可以得到根,在中序遍历中找到根的位置,将inorder分为左右子树,针对左右子树的中序、前序序列再开始构建。采用递归。 递归的关键是结束条件分析:每次递归时都要携带inorder的开始和结束的位置,preorder的开始和结束位置,当开始和结束位置相等
2016-07-07 09:41:43 262
原创 LeetCode—Construct BinaryTree By InOrder and PostOrder
Question: 通过二叉树的中序遍历序列、后序遍历序列构造二叉树。 Ideas: 中序遍历(左根右),后序遍历(左右根),根据后序遍历序列可以得到根,在中序遍历中找到根的位置,将inorder分为左右子树,针对左右子树的中序、后序序列再开始构建。采用递归。 递归的关键是结束条件分析:每次递归时都要携带inorder的开始和结束的位置,postorder的开始和结束位置,当开始和结束位置相
2016-07-07 09:37:11 255
原创 算法的复杂度概念
算法的时间复杂度和空间复杂度合称为算法的复杂度。时间复杂度(1)时间频度 一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度
2016-07-06 15:59:21 968
原创 LeetCode—Plus One
Question:Given a non-negative number represented as an array of digits, plus one to the number.The digits are stored such that the most significant digit is at the head of the list.Example:input :[19]
2016-07-04 11:19:29 262
原创 LeetCode-Add Binary
Questiion: Given two binary strings, return their sum (also a binary string). For example, a = “11” b = “1” Return “100”. 解题思路:转化为求二进制加法。开始想的是将字符串转换为char数组,然后用位运算先求异或^得到值放入新的数组中,求&得到进位,但是忽略了低位的进
2016-07-03 22:33:07 319
转载 WebService—WSDL详解
WSDL (Web Services Description Language,Web服务描述语言)是一种XML Application,他将Web服务描述定义为一组服务访问点,客户端可以通过这些服务访问点对包含面向文档信息或面向过程调用的服务进行访问(类似远程过程调用)。WSDL首先对访问的操作和访问时使用的请求/响应消息进行抽象描述,然后将其绑定到具体的传输协议和消息格式上以最终定义具体部署的服
2016-07-02 22:52:22 9219 2
原创 webService基础
什么是webService?Web Service是由企业发布的完成其特定商务需求的在线应用服务,其他公司或应用软件可以通过internet访问并使用这项web服务。 简单理解为以下几点:基于web服务,服务端提供一些资源供客户端应用访问和使用。一门跨平台、跨语言的规范(抽象说法)多个跨平台、跨语言的应用平台通信整合方案(实际应用)WebService技术上解释:web service=h
2016-07-02 22:32:30 428
原创 java—程序绑定
程序绑定概念:绑定指的是一个方法的调用与方法所在类(方法主体)关联起来。绑定分为静态绑定(前期绑定)和动态绑定(后期绑定)。静态绑定(前期绑定)针对java而言,在编译期间进行绑定。java方法中只有final、static 、private、构造函数是前期绑定的。final—用final修饰方法防止方法被覆盖,不能被继承因此有效的关闭java中的动态绑定 static—不能被继承privat
2016-07-02 21:37:58 431
Javascript开发实例:仿FLASH的图片轮换播放器
2014-10-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人