
JAVA
文章平均质量分 80
新手村的0级玩家
一只飞奔的蜗牛,虽进步缓慢,但从未停止脚步
展开
-
数据结构Java实现——④数组—>稀疏矩阵三元组顺序存储-->矩阵的倒置
作者信息文字描述倒置:把矩阵A的行换成相应的列,得到的新矩阵称为A的转置矩阵,记作AT或A。通常矩阵的第一列作为转置矩阵的第一行,第一行作为转置矩阵的第一列。那么,在已经存储好的三元组的顺序存储结构中,如果如何实现矩阵的倒置呢???第一反应肯定是直接遍历,然后行列对换即可,但是因为要求按照行号优先(也可以是列号优先,但是必原创 2015-02-04 14:45:58 · 1917 阅读 · 0 评论 -
重拾Java EE——Hibernate(1)基础篇
1.框架体系结构2.hibernate入门2.1 ORM框架Hibernate是一个数据持久化层的ORM框架. Object:对象,java对象,此处特指JavaBean Relational:关系,二维表,数据库中的表。映射|映射元数据:对象中属性,与表的字段,存在对应关系。2.2 什么是hibernateHibernate是轻量级Ja...原创 2018-03-26 22:32:24 · 266 阅读 · 0 评论 -
重拾Java EE——Struts 2(3)高级核心一
一、国际化概念(了解)1、什么是国际化软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的、符合来访者阅读习惯的页面或数据。2、什么需要国际化程序:需要国际化。数据:是什么样的就是什么样的。比如:用户注册的表单,有用户名,密码这5个汉字,在zh_CN语言环境,显示的就是用户名和密码。但是在en_US语言环境,...原创 2018-03-13 23:29:48 · 252 阅读 · 0 评论 -
重拾Java EE——Struts 2(2)进阶使用
一、封装请求正文到对象中(非常重要)1、静态参数封装在struts.xml配置文件中,给动作类注入值。调用的是setter方法。原因:是由一个staticParams的拦截器完成注入的。2、动态参数封装:开发时用到的通过用户的表单封装请求正文参数。2.1、动作类作为实体模型实体模型:Entity,对应数据库中表的记录(注意类对应的是表结构,而...原创 2018-03-12 20:52:29 · 182 阅读 · 0 评论 -
重拾Java EE——Struts 2(4)高阶核心二+其他杂项
一、contextMap中的数据操作1、存数据:需要熟悉ActionContext和valueStack的API。框架为我们存数据。1.1、利用ActionContext存数据1.2、利用ValueStack存数据a、如何获取ValueStack:b、ValueStack中的getRoot()方法:c、CompoundRoot是什么:...原创 2018-03-17 23:42:19 · 192 阅读 · 0 评论 -
重拾Java EE——JavaScript
一、js的简介1、js是什么 js是可以嵌入到html中,是 基于对象 和 事件驱动 的 脚本语言 特点: (1)交互性 (2)安全性:js不能访问本地磁盘 (3)跨平台:浏览器中都具备js解析器2、js能做什么 (1)js能动态的修改(增删)html和css的代码 (2)能动态的校验数据3、js历史及组成 ECMAScr原创 2017-10-31 19:06:44 · 483 阅读 · 0 评论 -
重拾Java EE——CSS
一、css的简介1、什么是css 层叠样式表,css是对html进行样式修饰语言层叠:就是层层覆盖叠加,如果不同的css样式对同一html标签进行修饰,样式有冲突的部分应用优先级高的,不冲突的部分共同作用样式表:就是css属性样式的集合2、css的作用(1)修饰html的 使其html样式更加好看(2)提高样式代码的复用性(3)html的内容与样式相分离 便于后期维护 3、css原创 2017-10-23 17:34:24 · 584 阅读 · 0 评论 -
重拾Java EE——HTML
一、html简介1、html是什么 Html是用来描述网页的一种语言。 (1)HTML 指的是超文本标记语言 (Hyper Text Markup Language) (2)HTML 不是一种编程语言,而是一种标记语言(markup language,标记语言是一套标记标签(markup tag)); (3)HTML 使用标记标签来描述网页原创 2017-10-23 17:11:05 · 797 阅读 · 0 评论 -
重拾Java EE——Struts 2(1)
一、框架概述1、框架的意义与作用:所谓框架,就是把一些繁琐的重复性代码封装起来,使程序员在编码中把更多的经历放到业务需求的分析和理解上面。 特点:封装了很多细节,程序员在使用的时候会非常简单。2、三大框架:Struts2,Hibernate,Spring二、关于三层架构三、控制器:MVC中的控制器1、MVC回顾 M:Model 模型,封装数据。javabean V:view 视图,原创 2017-12-29 22:00:33 · 488 阅读 · 0 评论 -
重拾Java EE——Hibernate(2)进阶篇
1 对象状态与一级缓存1.1 状态介绍hibernate 规定三种状态:瞬时态、持久态、脱管态 状态 瞬时态:transient,session没有缓存对象,数据库也没有对应记录。 OID特点:没有值 持久态:persistent,session缓存对象,数据库最终会有记录。(事务没有提交) OID特点:有值 脱管态:detached,sessio...原创 2018-03-26 23:01:40 · 184 阅读 · 0 评论 -
重拾Java EE——Hibernate(3)进阶篇(下)
1 Hibernate的关联关系映射:(多对多) 以Student 与Course为例,是一个经典的多对多的例子1.1创建实体和映射:Student:public class Student { private Integer sid; private String sname; // 学生选择多门课程. private Set&l...原创 2018-04-09 22:03:04 · 176 阅读 · 0 评论 -
判断分数是否为无限循环小数
0.前言之前做编程题,有一个部分需要判断一个分数是否为无限循环小数,挺有意思,特此整理记录如下: 问题描述(大概意思是) 已知分子a和分母b ,判断 分数a/b是否为无限循环小数1.已知结论 将分数化为最简分数后,分母的全部因数(除去1和其自身)没有为2或5以外的数,则该分数就不是无限循环小数;否则为无限循环小数。首先我们看 1/n的实际含义:将 1 分...原创 2018-06-12 22:42:12 · 17951 阅读 · 1 评论 -
java模拟全排列按序输出所有可能的结果
0前言今天在线笔试遇见了一个很有意思的编程题,特此整理记录如下:1.问题描述 问题描述(大概意思是) 给出一组整数(整数范围是1-9,数据不重复),要求按升序输出所有的排序可能性 输入:首先输入一个n表示数据个数,然后是n个整数 输出:按升序一次输出每一种结果例如: 输入 : 3 1 5 9 输出 1...原创 2018-06-11 21:30:50 · 3127 阅读 · 0 评论 -
重拾Java EE——JQuery(2)高阶
1 筛选选择器可以完成功能,筛选提供相同函数。 选择器 :first 筛选 first()对比: (“div:first”)直接获得第一个div(永远只能操作第一个)(“div:first”)直接获得第一个div(永远只能操作第一个)(“div:first”) 直接获得第一个div (永远只能操作第一个) (“div”).first() 先获得所有的div,从所有的中筛选出...原创 2018-04-19 21:48:09 · 252 阅读 · 0 评论 -
重拾Java EE——JQuery(1)基础
1 jQuery介绍1.1 JS类库JavaScript 库封装了很多预定义的对象和实用函数。能帮助使用者建立有高难度交互客户端页面, 并且兼容各大浏览器。1.2 当前流行的 JavaScript 库有:jQuery ,最流行EXT_JS,2.0开始收费Dojo ,很多js单独文件,优化:打包。(常见:开发小图标,一张图片)Prototype,对js扩展,框...原创 2018-04-19 21:23:09 · 308 阅读 · 0 评论 -
重拾Java EE——SSH整合
1 jar整合(总共39个) SSH版本: struts:2.3.15.3 hibernate : 3.6.10 spring: 3.2.01.1 struts(14个)1.1.1基础包(13个)解压一个空的例子,直接拷贝里面的jar包即可路径:struts-2.3.15.3\apps\struts2-blank\WEB-INF\lib...原创 2018-04-19 00:46:53 · 243 阅读 · 0 评论 -
重拾Java EE——Spring(1)基础
1 spring框架概述1.1 什么是springSpring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构...原创 2018-04-11 21:40:27 · 342 阅读 · 0 评论 -
重拾Java EE——Spring(2)高阶
1 AOP1.1 AOP介绍1.1.1 什么是AOP在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP(面向对象编程)的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各...原创 2018-04-16 22:17:26 · 350 阅读 · 0 评论 -
重拾Java EE——Hibernate(4)杂项
1 整合log4j(了解)slf4j 核心jar : slf4j-api-1.6.1.jar 。slf4j是日志框架,将其他优秀的日志第三方进行整合。 整合导入jar包 log4j 核心包:log4j-1.2.17.jar 过渡jar(整合jar):slf4j-log4j12-1.7.5.jar导入配置文件 log4j.properties ,此配置文件通知log4j 如何输...原创 2018-04-10 22:39:34 · 180 阅读 · 0 评论 -
Map集合的修改问题
0.前言今天在对Map集合进行修改的过程中发现了一个比较有意思的点,特此整理记录如下:1.需求 用Map集合存储Book 和对应的 数量 即 Map Map<Book, Integer> map = new HashMap<Book, Integer>(); for (int i = 0; i < 5; i++) { Book book =原创 2017-11-30 23:22:25 · 1782 阅读 · 0 评论 -
回溯法之N皇后问题
回溯法有许多问题,当需要找出它的解集或者要求回答什么解是满足某些约束条件的最佳解时,往往要使用回溯法。回溯法的基本做法是搜索,或是一种组织得井井有条的,能避免不必要搜索的穷举式搜索法。这种方法适用于解一些组合数相当大的问题。思想方法回溯法在问题的解空间树中,按深度优先策略,从根结点出发搜索解空间树。算法搜索至解空间树的任意一点时,先判断该结点是否包含问题的解。如果肯定不包含,则跳过对该结点为根的子树原创 2017-01-15 14:30:04 · 519 阅读 · 0 评论 -
数据结构Java实现——②队列
写在前面转眼数据结构这本书就学完了,但是一直学习的是C版的,感觉很不爽,就借了本Java版的自学了点,感觉还不错, 特此共享。此处是队列。文字描述队列的特点就是先进先出,其功能可以比作一个管道,如图只能从一端添加,在另一端删除,对每一个元素而已,先进先出代码描述1、队列的抽象接口package org.Ston原创 2015-01-04 13:33:04 · 552 阅读 · 0 评论 -
数据结构Java实现——①栈
首先,所谓栈,就是一个先进后出的一个线性表。其功能类似于一个水杯只能从一端添加,而且也只能在该端删除,对每一个元素而已,先进后出原创 2015-01-04 11:28:17 · 757 阅读 · 0 评论 -
数据结构Java实现——③串
所谓串,“字符串”也,即字符串在一起作为一个整体,当然串也是线性表的一种,当然也有顺序存储,链式存储两种。很显然在学习了前面那么多的“特殊的”线性表之后,对常见的两种存储方式不难理解首先来说顺序存储,在最开始构造时,要预先的创建一个“大”数组,然后将数据存储尽量,对应顺序存储,必须要有一个记录当前实际占用“大”数组长度、也就是串本身的实际长度的变量。然后来说链式存储,首先链式存储肯定要用到结点对象(有指针域,有数据域),如果结点的数据域里存储的是单个字符,那么该链表称为单字符链表,否则,也就是结点原创 2015-01-18 10:30:50 · 2004 阅读 · 1 评论 -
数据结构Java实现——①栈-->栈的应用三、算术表达式求值
当一个算术表达式中含有多个运算符,且运算符的优先级不同的情况下,如何才能处理一个算术表达式?????2、思路首先我们要知道表达式分为三类: ①中缀表达式:a+(b-c/d)*e ②前缀表达式+a*-b/cde ③后缀表达式abcd/-e*+ 由于运算符有优先级,所以在计算机中计算一个中缀的表达式非常困难,特别是带括号的更麻烦,而后缀表达式中既无运算符优先又无括号的约束问题因为在后缀表达式中运算符出现的顺序正是计算的顺序,所以计算一个后缀的表达式更简单。所以,可以将求算术表达式的值的过程化原创 2015-01-04 12:44:37 · 5784 阅读 · 2 评论 -
数据结构Java实现——①栈-->栈的应用四、汉诺塔问题
汉诺塔:汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。原创 2015-01-04 12:52:32 · 1625 阅读 · 0 评论 -
数据结构Java实现——①栈-->栈的应用二、分隔符匹配
1、问题描述编译器在编译一段代码时,首先进行的就是分隔符的匹配,常见的分隔符有{ } [ ] ( )/* */2、思路首先要知道的一件事就是:分隔符运行嵌套,而且,读入的顺序和处理的顺序相反,很显然是用栈。算法描述如下: 从左到右扫描java语句,从语句中不断的读取字符,每次读取一个字符,若发现它是左分割符,则将它压入栈;当从输入中读到一个右分割符时,则弹出栈顶 的左分隔符,并且查看它是否和右分隔符匹配,若它们不匹配,则匹配失败,程序报错; 若栈顶没有左分隔符与右分隔符匹配,或原创 2015-01-04 12:36:42 · 947 阅读 · 0 评论 -
数据结构Java实现——④数组——>稀疏矩阵三元组顺序存储
一、名词解释1、稀疏矩阵 矩阵阵中非零元素较少且分布的没有规律2、三元组存储矩阵中的一个元素有三个属性:行号,列号,元素的值,成为三元组3、顺序结构 对于每一个三元组而已,根据行号优先或者列号优先排序起来,便于后期针对矩阵的运算原创 2015-02-04 14:18:21 · 5465 阅读 · 1 评论 -
数据结构Java实现——④数组——>奇葩矩阵的压缩和还原
矩阵的压缩:对于某些特殊的矩阵来说,非零元素较少,大部分元素为0,采用某种算法,将非零元素存储在一位数组里以达到节省存储空间的目的的过程,称为矩阵的压缩矩阵的还原:将压缩后的数组还原成原始矩阵的过程。1、对角矩阵①矩阵介绍所谓对角矩阵:矩阵中的所有非零元素都集中在以主对角线为中心的带状区域中,即除了主对角线上和直接在主对角线上下若干条对角线上的元素外,其余元素均为零。这样的矩阵称为半带宽为d的带状矩阵,带宽是2*d+1,d为直接在对角线上下方不为0的对角线数2、对称矩阵① 矩原创 2015-02-03 20:34:41 · 1896 阅读 · 0 评论 -
数据结构Java实现——④数组——>稀疏矩阵十字链表存储法
作者信息文字描述1、十字链表的结点的结构2、十字链表的存储3、原创 2015-02-04 15:30:06 · 4244 阅读 · 0 评论 -
数据结构Java实现——②队列-->队列的“奇葩”二 优先级队列
写在前面有很多时候,一些数据的存储不仅需要先进先出,而且还有根据数据的优先级来排序,也就是优先级高的一定先出去,优先级相同的先进先出,此时就会用到优先级队列应用其实优先级队列的应用十分广泛,比如说构造哈夫曼树算法,再比如在一些计算机操作系统中用优先级队列来来满足抢先式多任务操作系统等等等等原创 2015-01-04 14:38:57 · 1333 阅读 · 1 评论 -
分治算法之大整数相乘问题
1.问题描述 求两个大数A、B乘积的准确结果 其中A和B均为100位以上的十进制整数 A和B的位数可以不相等 2.问题分析(1)100位以上的整数,用整数变量直接存储装不下所以,中间运算时,牵扯到大数肯定当做字符串来存储(2)A和B直接乘操作肯定是操作不了,必须是分开来处理可以二分法,将AB转换A=A1*10^(n1/2) +A0 —– n1为a的位数 B=B1*10^原创 2016-10-22 19:18:56 · 6016 阅读 · 0 评论 -
数据结构Java实现——①栈-->栈的应用一、大数相加
几个比较有意思的栈的应用的例子描述:两个比较大的数(几百位)相加,如何才能处理原创 2015-01-04 12:32:10 · 1578 阅读 · 0 评论 -
Comparable和Comparator的区别
从字面意义上来看 Comparator 名词,比较器。 是针对于不同的情况可以单独定义。Comparable 形容词,可以比较的。“给类添加一项功能”。从用法上来看(从字面意义上来理解) Comparat原创 2015-09-02 20:28:08 · 524 阅读 · 0 评论 -
提高代码的重用性之——泛型
作者信息 写在前面原创 2015-03-24 13:37:14 · 1028 阅读 · 0 评论 -
Iterator迭代器和Iterable的关系
写在前面 在“玩”集合的时候,常用集合的迭代器(Iterator),它很方便的能遍历集合中的所有的元素Collection list =原创 2015-03-16 21:49:50 · 1544 阅读 · 0 评论 -
数据结构Java实现——③串--->串的模式匹配:Brute-Force算法和 KMP算法
KMP模式匹配算法在Brute-Force算法的基础上进行了改进,改进后的算法,可以在匹配失败后,无需修改记录主串当前比较的字符的下标 i;而且,记录子串当前比较的字符的下标 j也不用清零。而是在已经比较过的字符的基础上,针对子串本身的特点,移动子串,以达到减少比较次数的目的当某次匹配不成功时,主串s的当前比较位置i不用回退,此时主串Si 可以直接和子串中的某个tk进行比较,此处的k的确定与主串无关,只有子串本身的构有关,即从子串本身就可以计算出k的值原创 2015-01-18 10:47:27 · 1711 阅读 · 0 评论 -
浅谈递归
我们先来假设这样一个场景: 有一个n层的大超市,所有的信息只能在相邻的楼层间进行传递,顶层为Boss的房间,底层(一楼)为统计长(不要较真这个职务)的房间,Boss一挥手,给统计长发布命令要查账,因此首先要将Boss的命令传递到一楼(传递的过程中每层统计本层的数据),然后一楼的统计长发布统计命令,每层之间逐层向上的将本层信息和下层信息汇总后交给上层,最后将最终结果交原创 2015-02-15 20:24:15 · 578 阅读 · 0 评论 -
数据结构Java实现——②队列--->队列的“奇葩”一循环顺序队列
学习了队列,就不得不知道一些特殊的队列,在实际应用中,这些队列有时用的更多,此为循环顺序队列循环顺序队列就是为了防止出现假溢出现象而出现的,其功能类似于一个环形,如图,但实际上还是一个线性存储的结构原创 2015-01-04 13:50:50 · 1253 阅读 · 0 评论 -
DBLP数据集处理
0.前言最近写论文用到了比较出名的DBLP数据集,详细介绍见DBLP官网DBLP数据集下载地址DBLP是以XML的形式给出的,类似于<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE dblp SYSTEM "dblp.dtd"><dblp> <article原创 2018-07-13 20:30:20 · 5358 阅读 · 2 评论