请稍侯

[数据结构笔记]队列-循环队列

前言 什么是循环队列? 我们把队列的这种头尾相接的顺序存储结构称为循环队列。 如何判断队列是空还是满? 首先定义2个指针, front 指向队头元素 rear 指向队尾元素的下一个位置 当队列为空时,front = rear 当队列为满时,我们修改其条件,保留一个元素空间。也就是说,当队列满时,数组中还有一个空闲单元。 通用的计算队列长度的公式为: (rear - front + maxSize) % maxSize java实现 我自己使用java代码进行了循环队列的实现,如果问题,欢迎留言指正。 import java.util.Arrays; /**...

Read More

[数据结构笔记]队列-队列的链式存储结构

前言 队列的链式存储结构,其实就是线性表的单链表,只不过它只能尾进头出,我们把他简称为链队列。 java实现 使用java代码实现队列的链式存储结构,如果问题,欢迎留言指正。 /** * 队列的链式存储结构 * * @author xuhf * */ public class LinkedQueue { public static class Node { Object data; Node next; } Node front; Node rear; public void en(Node node) { if (r...

Read More

Web应用接口开发签名方式

背景 在进行接口开发时,需要对数据的安全性有一定的要求,尤其是在接口暴露在公网之下,为了防止传输时参数被篡改,我们使用签名sign的方式提高安全性。 接口参数签名sign 最初接触这种方式是在淘宝的支付宝接口上,淘宝的支付宝接口都采用的是这种方式,使用合作商户的key对参数进行签名。 生成sign的方法 将所有参数(sign和sign_type除外,有的时候特定的某一个参数也可以不参加签名,空值不参加签名)按照参数名的字母升序排序。 将参数值按照 参数名1=参数值1&参数名2=参数值2 的方式拼接成一个字符串 将密...

Read More

[数据结构笔记]线性表(二)

回顾 线性表的两种结构:顺序存储结构和链式存储结构。 顺序存储结构和链式存储结构的对比 静态链表 首先我们让数组的元素都是由2个数据域组成,data和cur。也就是说,数组的每个下标都对应一个data和cur。 数据域data用来存放数据元素。而游标cur相当于单链表中的next指针,存放该元素的后继在数组中的下标。 我们把这种用数据描述的的链表叫做静态链表,这种描述方式也叫做游标实现法 循环链表 将单链表中终端结点的指针由空指针改为指向头结点,就使整个链表形成一个环, 这种头尾想接的单链表称为单循环链表,简称循环链表。 双向链表 双链表是在单链表的每个结点中,再设...

Read More

团队管理经验谈

说明 以下文章来自新浪微博。个人觉得讲的很好,没有那种空话、废话,更多的是深入我们内心。 记得面试的时候,面试官对我说,现在你看那些团队管理的书,学到是“术”, 但是作为一个刚刚入门的团队领导者,你更需要的是先把事情做好。 文章列表 问题与挑战 手段与生命周期 优秀团队 个人素养与人才培养 淬火成金

Read More

[数据结构笔记]线性表(一)

## 什么是线性表 线性表是零个或多个数据元素的有限序列。 线性表的抽象数据类型 ADT 线性表List Data 线性表的数据对象集合为{a1,a2,....,an},每个元素的类型均为DataType。其中,除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个an外,每一个元素有且只有一个直接后续元素。数据元素之间的关系是一对一的关系。 Operation // 初始化 // 判断线性表是否为空 // 清空线性表 // 返回某个位置的元素 // 判断是否存在某个元素,返回其位置 // 插入元素 // 删除元素 // 放回线性表...

Read More

Unicode转汉字

前言 在项目里我们会遇到unicode需要转换成汉字的需求。留下代码供未来使用。 代码 import java.nio.ByteBuffer; import java.nio.charset.Charset; import java.util.regex.Matcher; import java.util.regex.Pattern; public class UnicodeUtils { public static String decodeUnicode(String str) { Charset set = Charset.forName("UTF-16"); ...

Read More

[数据结构笔记]数据结构绪论

写在开始 上大学时,就没好好学习过数据结构,现如今工作了,才体会到数据结构对我们的好处。 感谢《大话数据结构》,让我有想法再把数据结构捡起来看看,还清当年的债。 争取在2015年5月份结束,将这本书看完。 概念 数据:是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合。 数据元素:是组成数据的,有一定意义的基本单位,在计算机中通常作为整体处理。也被称为记录。 数据项:一个数据元素可以由若干个数据项组成,是数据不可分割的最小单位。 数据对象:是性质相同的数据元素...

Read More

[数据结构笔记]算法

算法的定义 算法是解决特定问题求解步骤的描述,在计算机中变现为指令的有限序列,并且每条指令表示一个或多个操作。 算法的特性 输入输出 算法具有零个或多个输入,至少有一个输出。 有穷性 算法在执行有限的步骤之后,自动结束而不会出现无线循环。,并且每一个步骤在可接受的时间内完成。 确定性 算法的每一步骤都有确定的含义,不会出现二义性。 可行性 算法的每一步都必须是可行的,也就是说,每一步都能通过执行有限次数完成。 算法设计的要求 正确性 算法的正确性是指算法至少应该具有输入、输出和加工处理无歧义性,能正确反映问题的需求、能够得到问题的正确答案。 可读性 算法设计...

Read More

Spring4与Quartz2 实现任务的定时调度

需求 最近在做一个任务,需要定时执行,并且将定时任务单独提出来,使用jar包的形式。 解决 定义任务执行的Bean public class PaymentTask { private static final Logger logger = LoggerFactory .getLogger(PaymentTask.class); public void execute() { logger.info("PaymentTask is starting..."); System.out.println("PaymentTask execute...

Read More