- 博客(91)
- 收藏
- 关注
原创 无忧手机APP接口
无忧手机APP api 全局备注: message: 保存信息,data,需要返给前端的消息,success:true:标示请求是否成功 1. 注册信息接口请求地址:http://localhost:8080/apcompany/student/registerphone=123456789&password=12345678&code=123456参数...
2017-10-18 17:44:01
256
原创 MAZE
A M × N square maze,0 means road while 1 means wall, find a way from entrance to exit, this maze which base on two-dimensional array has 4 directions(right,left,up,down)by the way, the maze st...
2017-09-06 11:15:48
400
原创 无忧的接口定义(3)
1. 整句翻译接口请求地址:http://localhost:8080/apcompany/learn/translation/{questionId}请求方式:POST参数意义:questionId 问题的主键结果如下 { "id": 1, "questionId": 0, "translate_lines": "当x=3的时候,找...
2017-08-17 15:15:17
193
原创 无忧的接口定义(2)
1 例题 step 步骤 接口请求地址:http://localhost:8080/apcompany/learn/step/valid?putIn=dd&step=1&questiongId=1请求方式:POST参数:putIn 输入答案 ,例如1 ,step 输入步骤,questiongId 问题ID结果false 或者true 2 获取...
2017-08-17 13:32:40
168
原创 无忧的接口定义(1)
1. 选择科目接口 请求地址 :http://localhost:8080/apcompany/show/content/list 参数 :无请求方式 :GET请求结果样例:[ { "picture": "", "id": 1, "parentId": 0, "name": "AP",
2017-08-17 11:05:34
119
原创 炒股的心得
炒股心得(1)--为什么散户不会赚钱 1.炒股是资源再分配,并不创造财富. 2.开办股市就是为了赚钱,不给你一点甜头你不会进来,更不用说掏钱. 3.中国股市没有做空机制,往下做只不过是为了将来往上拉. 4.主力有远大目标,显得大智若愚.散户有小聪明,却是大愚若智. 5.人性有恐惧和贪婪,主力专找这两死穴攻击.散户却不承认自身有此毛病. 6.趋势理论其实非常重要,其时我们大部分时间都在...
2016-05-09 17:34:11
290
删除有序列表中重复的数据
已知存在一个排序链表,删除所有重复数据,保证每个元素只能出现一次。例如:已知: 1->1->2, 返回 1->2.已知1->1->2->3->3, 返回 1->2->3.思路:遍历链表,保存一个中间值,如果和当前的值相等的,不保存,不等,才保存。/** * Definition for singly-linked li...
2015-08-17 23:37:10
381
Mapped Statements collection already contains value for 错误
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [conf/spring-mybatis.xml]: Invocation of init method failed; ...
2015-04-15 08:43:36
1208
Jfreechart 一个图上多个坐标,并指派多个数据集到某个坐标上
最近开发需要使用 jfreechart,网上的东西不算太多,这个jar虽然免费,但是资料收费,智能自己研究了 整体思路上,先创建出chart,在获取plot,在plot上面逐个添加坐标,最后将坐标很数据集对map映射,得到结果了、 将坐标信息,添加到xyseries中 public static void initSeries(XYSeries series,Map...
2014-05-12 15:18:54
473
逆波兰表示法计算
题目:求值逆波兰表示法逆波兰表示法:逆波兰记法中,操作符置于操作数的后面。例如表达“三加四”时,写作“3 4 +”,而不是“3 + 4”。如果有多个操作符,操作符置于第二个操作数的后面,所以常规中缀记法的“3 - 4 + 5”在逆波兰记法中写作“3 4 - 5 +”:先3减去4,再加上5。使用逆波兰记法的一个好处是不需要使用括号。例如中缀记法中“3 - 4 * 5”与“(3 - 4)*5”不...
2014-05-03 17:35:21
283
包含最大体积水的容器
已知:有n个非负整数数a1,a2,a3,a4,a5……an,每个数都代表一个一个点(i,ai),其中ai是点i的高度,有n个垂线,每个垂线的高度是ai,位于x轴i上,一个容器由x轴和任意两个垂线组成,求最大的容器能装多少水? 分析,这个题目其实不是很难,如果使用2层for循环,肯定能做出来,但是如果加深点难度,我们这么能在O(n)的时间内,找到答案了,发散思维了,对了,就是从两头开始找,...
2014-04-30 00:17:00
147
反转一个Stirng中的单词
题目:有个String串,按照单词一个一个反转,比如:输入为s = "the sky is blue",输出为 "blue is sky the".注意:1.有多个空格在两个单词中间,按照一个空格处理2.如果在字符串的前端,后端都包含空格的话,反转后,不能在开头和结尾处包含空格的3.输入的也可能只有一个单词。 思考:单词是保持顺序的,单词在句子中的位置发生改变,很容易...
2014-04-27 10:39:30
120
查找数组的插入位置
题目:已知一个排序数组和一个目标值,如果目标值能够在数组中找到,返回目标值在数组的位置,如果不能找到,那么返回,数组插入这个数后,这个数的位置例如: [1,3,5,6], 5 → 2[1,3,5,6], 2 → 1[1,3,5,6], 7 → 4[1,3,5,6], 0 → 0 解题,使用二分法查找位置,这样比较快,其实一个个去找也行,就是速度比较慢 public i...
2014-04-25 00:24:26
183
原创 设计模式读后感之策略模式
策略模式定义是:定义算法家族,分别封装起来,让他们之间可以相互替代,此模式让算法的变化,可以不会影响使用算法的客户。uml图如下: 这是抽象策略类package category;public abstract class Stragery { public abstract void AlgorithmInterface();} 具体实现的三个策...
2014-01-06 18:23:55
248
最长合法括号的长度
题目:已知一个字符串s,仅有'(' 和 ')'构成,求最长完全配对的子串长度。(就是()配对成功).比如说:"(()", 最长完全配对的字串长度是"()" ,长度为2。")()())"丁的最长完全配对的字串长度是"()()" ,长度是4。解题思路,当时有两种解题思路,第一种是,使用栈,把(的数组中的位置放到栈中,遇到)出栈,并且统计长度,最后检查栈,如果栈是空的,放回当前长度,如果栈...
2013-11-27 13:57:11
206
下一个排列
题目:已知一个排列,按照字典排序的方式查找大于当前排列的下一个排列,若当前排列没有比它更大的排列后,返回这个排列的最小排列(其实就是升序)。要求:不得申请额外的空间下面的举例说明下,(左边的是输入的排列,右边的输出的排列)1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1解题感悟:说了半天就是初中学过的排序的,找到一个比当前大的下个排序,要是人去做的...
2013-11-26 14:27:03
127
不使用乘法,除法,和取余运算计算两个int型的除法
题目:不使用乘法,除法,和取余运算计算两个int型的除法思路:既然不让用乘法,除法,只能回归小时候做除法题的解题方法了,理论上可以用cpu的计算除法的方式,来计算,这只是一个思路,我不会,回到最初的方法吧, 如果你是手工做除法的话,那和十进制是一样的办法。 好了,我们现在需要做的事情就是模拟这种情况了 首先,保证全是正数,如果是负数的话,按照正数处理,返回一个负数就...
2013-11-25 16:19:44
888
删除元素
题目:已知一个数组A,和一个值elem,需要把数组中的elem值全部删除,并且返回删除后的数组长度。为删除前数组的顺序可以任意改变的。思路:先把数组进行排序,然后用2分查找的方法找到,需要删除值的位置,因为是2分法,所以它的前后都有可能有重复的,需要在往前后便利,找到相同的值后,用后面的数组覆盖这些重复的值就行了。public int removeElement(int[] A, int...
2013-11-25 10:31:39
158
删除排序数组中的重复数据
题目:已知一个排序int数组,删除数组中的重复的数据,使得数组中每个元素只出现一次,返回新的数组的长度要求,不要使用额外的空间,不能new出新的空间。 思路:其实题目不是很难,数组已经是遍历好了的,所以如果出现重复的话,那么重复的数据一定是相邻的,所以,根据这个思想,我们可以遍历数组,找到当前值和下一个值是相同的,并且纪录下重复的情况,让数组的总长度,减去重复度,就是题目的要求了...
2013-11-22 10:31:19
110
原创 合并k个有序的list
题目:已知有k个有序的list, 将这k个list合并成一个有序的lists,注意分析考虑它的效率思路:k个list都是有序的,这样就可以逐一比较了,设置已经排序好的为move,等待加入的为current,每次都一动move,如果遇到,current介于move和move的下一个节点之间,将已经遍历好的move, 和current当前换位,继续,move被截断的当做新的current,直到...
2013-11-20 16:47:45
194
验证括号配对
题目: 已知一个string 类型字符串s,s仅仅由'(', ')', '{', '}', '[' 和 ']'组成根据以下法则来判断字符串是否合法:括号类型必须完全配对, "()" 和 "()[]{}"是合法的,但是"(]" 和 "([)]"是非法的思路:既然需要配对,后进的需要先出,我们想到栈就是不错,满足要求,以下是java代码public boolean isValid(S...
2013-11-19 15:09:15
95
删除list倒数第n个元素
题目:有一个链表,删除倒数第n个节点,并返回该链表的头节点。例如:由一个链表 1->2->3->4->5, 设n = 2.那么删除倒数第二个节点后 就是1->2->3->5. 注意:1.n总是合法的; 2.只遍历一次链表的结构如下: public class ListNode { public int val;...
2013-11-18 15:16:44
446
数组数字加一运算
题目: 有一个用int数组表示的数字 digits, 求digits 加一运算后的int数组?例如 :digits ={1,0} , 加一运算后就是 {1,1}; digits= {9,9}, 加一运算后就是{1,0,0}思路:一般情况下,直接使用digits[digits.length-1]++,就可以了,但是如果末尾是9的话,必须给这个数字前一位加1,最麻烦就是第一位也是9,...
2013-11-18 11:16:44
485
原创 数字反转
反转一个int型数字,例如 例子1: x = 123, return 321例子2: x = -123, return -321这个题目看起来比较简单,可是真正实现的时候总是有一些情况没有考虑到:如果输入的数字是0结尾的,比如10,100,1000……,那么应该输出什么呢?如果输入的数字没有超过int的范围,但是反转后就超过了,怎们办?其实需要增加一个参数等等,这里部探讨这...
2013-11-15 16:16:56
149
Z字形模式转换
题目:有一个字符串 "PAYPALISHIRING",它将使用Z字形模式转换成如下的方式: P A H NA P L S I I GY I R一行一行读,"PAHNAPLSIIGYIR"请写出一个函数,它的输入参数有两个,一个是需要转化的字符串s,一个是行数n,string convert(string text, int nRows);输入...
2013-11-15 16:00:11
225
求最长回文子串
题目:已知一个字符串s,查找到它的最长回文子串,你可以设想已知字符串s的最大长度为1000,并且存在唯一的最长回文子串。 解题过程,对于每个字符,然后将当前字符与后面的每个字符逐个比较,并设置一个长度 半径R,用于保存最长回文的长度,设置一个index,记录回文的开始地址,(其实这么设计有问题,如果遇到aabcbaa子串回文)就会漏过,所以最后通过验证之后,需要增加一个重复度,这里重复度...
2013-11-15 15:34:58
83
快速排序的非递归表达 java
今天突然看了看栈,想了想该怎么把快速排序整理成非递归的,于是花了一天的时间才写出来: public int[] quickSort(int[] num) { if (num.length < 3) return null; int start = 0; int end = num.length - 1; int middle = 0; Stac...
2013-11-13 16:37:42
76
原创 两个数字相加
两组用链表储存的非负数字,数字反序存储,每个链表节点存放一个数字,求两组数字相加之和,并用链表表示,例如: 输入: (2 -> 4 -> 3) + (5 -> 6 -> 4) 输出: 7 -> 0 -> 8 分析: 其实就是平时的加法运算反序表示,大体思路是:分别相加对应位置上的数字,判断是否大于10,如果大于10,减去10,并...
2013-11-01 16:16:49
274
原创 没有重复字母的最长子串长度
提供一个字符串,计算最长不包含重复字母的子字符串的长度:例如"abcabcbb" 最长没有重复字母的子串是"abc",长度为3,"bbbbb"最长的没有重复字母的子串是1; 思路是: 将字符串转换成字符数组,然后逐一添加到list中,如果list包含了这个字符,求此时的list长度,如果,大于之前的子串的长度,将最大长度设置为此子串的长度,并...
2013-10-31 11:58:25
139
Two Sum
Given an array of integers, find two numbers such that they add up to a specific target number.The function twoSum should return indices of the two numbers such that they add up to the targ...
2013-10-23 14:26:36
77
原创 hadoop 基于web 端监控ui
我们可以使用hadoop提供的web 接口来实现监控自己的hadoop集群,这样拿到的我们想要得信息比通过日志和查看目录要快的多: Namenode 通常通过50070这个端口号来查看他的详细信息报告。提供了我们集群HDFS整体情况: 我们也可以通过点击 browse the filesystem 来查看每个datanode ,结合hadoop日志,来确定我们这个集...
2013-09-11 13:25:14
496
计数排序
// 来自《算法导论》计数排序假设n个输入元素中的每一个都是介于0到k之间的整数,此处k为某个整数,当 k = O(n)时,计数排序的运行时间为O(n)。计数排序的基本思想就是对每一个输入元素x,确定出小于x的元素个数,有了这一信息就可以把x直接放到它最终在输出数组中的位置。维基百科:http://zh.wikipedia.org/zh-cn/计数排序大致过程:1、申请一个长...
2013-08-21 13:47:23
92
java 如何设置返回类型是sql 型date
近日经常遇到在java bean,设置类型为sql.date,并且数据库对应的格式也是日期格式的。自己研究了半天,记录下,方便日后使用: 1.获取当前日期格式: package test;import java.text.SimpleDateFormat;import java.util.Calendar;import j...
2013-08-21 13:41:34
317
原创 冒泡排序
冒泡排序 冒泡排序(Bubble Sort,台灣譯為:泡沫排序或氣泡排序)是一種簡單的排序算法。它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數列的工作是重複地進行直到沒有再需要交換,也就是說該數列已經排序完成。這個算法的名字由來是因為越小的元素會經由交換慢慢「浮」到數列的頂端。冒泡排序對個項目需要O()的比較次數,且可以原地排序。儘管這個演算法是...
2013-08-20 17:06:48
82
原创 选择排序
选择排序选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至...
2013-08-20 16:51:58
68
原创 插入排序
插入排序 插入排序概述:有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部...
2013-08-20 16:30:10
96
原创 希尔排序
希尔排序希尔排序原理: 希尔排序是D.L.Shell于1959年提出来的一种排序算法,在这之前排序算法的时间复杂度基本都是O(n2)的,希尔排序 算法是突破这个时间复杂度的第一批算法之一。 我们前一节讲的直接插入排序,应该说,它的效率在某些时候是很高的,比如,我们的记录本身就是基本有序的,我们只需要少量的插入操作,就可以完成整个记录集的排序工作,此时直接插入很高效。...
2013-08-20 15:26:05
105
原创 快速排序
快速排序介绍快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 原理:设要排序的数组是A[0]……A[N-1],首先任...
2013-08-20 10:00:13
96
原创 归并排序
归并排序归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。值得注意的是归并排序是一种稳定的排序方法。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并java 实现:package array;// 归并算法 有递...
2013-08-19 16:46:07
80
堆排序 java实现
难得一个周五,没有什么事情,我于是用java 写了一个堆排序算法,忙活了很长时间,觉得自己写的不错的时候,问问 同事——可,可很easy写了出来,我仔细学了学他的思路,不错,比我的好,我特别留下的代码,今后学习使用: 先介绍一下堆排序: 1.堆 堆实际上是一棵完全二叉树,其任何一非叶节点满足性质: Key[i]<=key[2i+1]&&Key[i...
2013-08-16 17:20:10
75
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人