关闭

线性表之链表

1、顺序表的优缺点 (1) 优点 a、由于顺序表的存储结构是逻辑上相邻的两个元素在物理位置也相邻,因此,可以随机存取表中任意一个元素。 (2) 缺点 a、对顺序表做插入、删除时,需要移动大量的数据元素,影响了运行效率。 b、线性表预先分配空间时,必须按最大空间分配,存储空间得不到充分的利用。 c、表的容量难以扩充。 请参考顺序表2、线性链表 链接式存储的线性表,它不需要用地址连续的...
阅读(65) 评论(0)

线性表之顺序表

1、线性表的定义 线性表(Linear List)是一种线性数据结构,其特点是数据元素之间存在“一对一”的关系。在一个线性表中每个元素的类型都是相同的,即线性表是由同一类型的数据元素构成的线性结构。1-1、线性表的定义 线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列,通常即为: (a1,a2,…..ai-1,ai,ai+1,…an) 其中n为表长,n=0时称为空表. 在线性表...
阅读(43) 评论(0)

数据结构之串

1、串的概念 字符串简称串,是一种特殊的线性表,它的数据元素仅由一个字符组成。2、串的定义 串(String)是由零个或多个字符组成的有限序列,又称字符串。其中s是串名,用双引号括起来的字符序列为串值,但引号本身并不属于串的内容。ai(1<=i<=n)是一个任意字符,它称为串的元素,是构成串的基本单位,i是它在整个串中的序号;n为串的长度,表示串中所包含的字符个数。3、术语描述 (1)长度–串...
阅读(121) 评论(0)

快速排序

1、快速排序基本思想 快速排序被认为是一种最好的内部排序方法。其基本思想是:任取待排序序列中的某一个元素作为基准,通过一趟快速排序将待排序的元素分割成左右两个子序列,其中左子序列元素的排序关键字均比基准(也称枢轴)元素的关键字值小;右子序列元素的关键字均比基准元素的关键字大,基准元素得到了它在整个排序中的最终位置并存放好,这个过程称为一趟快速排序。第二趟再分别对分割成左右两部分的子序列,进行快速排...
阅读(192) 评论(0)

选择排序

1、选择排序基本思想 选择排序主要是从待排序列中选取一个关键字值最小的记录,把它与第一个记录交换存储位置,使之称为有序。然后在余下的无序的记录中,再选出关键字最小的记录与无序区中的第一个记录交换位置,又使它成为有序。依此类推,直至完成整个排序。思想分解: a、初始状态:整个数组r划分成两个部分,即有序区(初始为空)和无序区。 b、基本操作:从无序区中选择关键字最小的记录,将其与无序区的第一个...
阅读(103) 评论(0)

插入排序

1、插入排序基本思想 是一种简单的排序方法,它的基本操作是将一个记录插到已排序好的有序表中,从而得到一个新的记录。2、插入排序算法代码如下: //插入排序 public class InsertSort { // 插入排序的方法 public void sort(int arr[]) { // 从1开始走,因为第一个数是有序的 for (int i...
阅读(58) 评论(0)

冒泡排序

一、冒泡排序 1-1、代码如下:public class PaiXun { public static void main(String[] args) { int arr[] = { 1, 6, 0, -1, 9 }; int temp = 0; // 排序 // 外层循环,它决定一共走几趟,假如有5个数只要走4趟(因为最后那一...
阅读(87) 评论(0)

JAVA集合体系

集合框架体系示意图一、List结构的集合类 1、ArrayList 1-1、如何使用 ArrayList al = new ArrayList(); al.add("1"); al.add("3"); al.add("2"); for (int i = 0; i < al.size(); i++) { Sy...
阅读(210) 评论(0)

openfire+XMPP实现即时通讯

文章背景 大部分的APP都是盈利为目的而开发,与消费者互动必成重要的一个功能,有互动就有潜在客户,而且大多数老板都认为自己的APP没有IM功能就会觉得不上档次。目前市面的比较好点的即时通讯第三方有环信、融云等。我不采用第三方的原因主要三点:1、第三方前期免费开放,有可能在圈用户,不排除后期收费;2、其实第三方服务器经常蛋机,总有正在维护升级,请耐心等待啥啥的,总感觉受之于人;3、第三方sdk服务器...
阅读(3112) 评论(0)

Android三大动画详解

1、Frame Animation(逐帧动画)逐帧播放事先定义好的图片,给人在视觉上带来动画效果,类似胶片电影播放原理。1-1、快速入门 1-1-1、准备几张图片,放到图片资源文件下。1-1-2、创建Animation-list帧布局文件,放在res/drawable目录下 <animation-list xmlns:an...
阅读(153) 评论(0)

StructureMap+EF+Linq搭建MVC框架

开发工具准备 1、安装数据库 2、安装VS切记先安装SQL Server 在安装visual studio,否则后果不堪设想。3、安装mvc插件 安装完插件需要重启vs才能生效,至此,已具备开发mvc工程的能力。快速入门 step 1、建库建表 数据库名字为XHCommunityService;表名称StreetBasicInformation2、构建mvc工程3、添加一个类库YMSXH...
阅读(440) 评论(0)

String/StringBuilder/StringBuffer性能对比

String String s="a"; s=s+1;虚拟机解析这段代码时,创建对象s,赋予一个a,当执行到第二句的时候,先创建一个左边的s对象,此时的s并不等于之前创建的s,然后给新的s赋值s+1的值,s+1中的s和第一个s是同一个。里面存放a那个值,所以说之前对象s并没有变化,足以说明String类型是不可改变的对象。由于这种机制,每当用String操作字符串时,实际上是在不断的创建新的对象,...
阅读(107) 评论(0)

数据库设计之三大范式

背景表设计后,很可能结构不合理,出现数据重复保存,简称数据的冗余,这对数据的增删改查带来很多后患,所以我们需要审核是否合理,如何审核呢?需要一些有关数据库设计的理论指导规则,这些规则业界简称数据库的范式。两个重要概念1、部分函数依赖2、传递函数依赖三大范式1、第一范式1-1、第一范式的目标是确保每列的原子性 1-2、如果每列都是不可再分的最小数据单元(也称为最小的原子单元),则满足第一范式2、第二...
阅读(239) 评论(0)

我的struts之旅一

struts在项目架构中位置struts运行原理图 看不清的童鞋可以把图片另存为查看。快速入门 step 1、新建一个web项目 2、引入struts框架jar包 3、新建表单ActionForm类 //这是一个用户表单,用于填充数据的 public class UserForm extends ActionForm { //定义属性[定义属性名字的时候,应该和jsp页面的组件名...
阅读(158) 评论(0)

我所认识的那些技术

Android Android中实现热补丁动态修复 Android中的AOP编程之AspectJ实战实现数据埋点 MVP+Retrofit+Rxjava实战 Android操作SQLite数据库 Android中轻松使用greenDao实现数据持久化 Android全局异常捕获机制iOS openfire+XMPP实现即时通讯java ee 一步步搭建ssh框架 我的hibern...
阅读(541) 评论(0)

我的hibernate之旅一

hibernate是什么?1、hibernate是 轻量级的 ORM 框架。 2、hibernate 处于我们项目的持久层位置(正因为如此,所以有人又把hibernate称为 持久层框架) 3、hibernate 实际上就是对jdbc进行了轻量级的封装. 4、hibernate 的基础还是我们java 反射机制 5、hibernate 是对jdbc进行轻量级封装的 orm 框架,充当项目的...
阅读(122) 评论(0)

一步步搭建ssh框架

ssh简介ssh(struts+spring+hibernate) 三大框架配合使用来开发项目,是目前java ee 最流行的开发方式.ssh项目架构一步步搭建ssh框架 step 1、创建一个web项目 2、导入struts、spring、hibernate相关的jar包 3、先搭建spring框架。如果还对spring陌生的同志,可以先阅读spring快速入门3-1、创建spring核心...
阅读(544) 评论(0)

我的spring之旅之AOP编程

AOP介绍aop( aspect oriented programming ) 面向切面(方面)编程,是对所有对象或者是一类对象编程,核心是( 在不增加代码的基础上, 还增加新功能 ),也是spring的核心技术之一。AOP术语1.切面(aspect):要实现的交叉功能,是系统模块化的一个切面或领域。如日志记录。 2.连接点:应用程序执行过程中插入切面的地点,可以是方法调用,异常抛出,或者要修...
阅读(212) 评论(0)

我的spring之旅一

spring的地位如图可以看出,sping纵跨整个项目架构,它是一个容器框架。下面使用一个简单的项目来认识spring。快速入门step1、新建一个普通java工程,spring只是一种容器,所以支持java se和java ee2、引入spring的开发包(最小配置spring.jar 该包把常用的jar都包括, 还要 写日志包 common-logging.jar3、新建一个叫UserServi...
阅读(421) 评论(0)

break和continue的区别

break和continue的区别...
阅读(90) 评论(0)
212条 共11页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:48342次
    • 积分:1168
    • 等级:
    • 排名:千里之外
    • 原创:41篇
    • 转载:169篇
    • 译文:1篇
    • 评论:12条
    文章分类
    最新评论