算法
AI蒸汽人
这个作者很懒,什么都没留下…
展开
-
【算法-排序】杂记
1.快速排序最坏情况就是每次选的基准数都和其他数做过比较,共需比较( n -1) + ( n -2) + … + 1 = n( n -1) /22. 空间复杂度。冒泡排序,简单选择排序,堆排序,直接插入排序,希尔排序的空间复杂度为O(1),因为需要一个临时变量来交换元素位置,(另外遍历序列时自然少不了用一个变量来做索引) 快速排序空间复杂度为logn(因为递归调用了) , 归并排序空间复杂是O原创 2017-04-25 21:16:24 · 755 阅读 · 1 评论 -
【算法-查找】杂记
1.二分查找(折半查找) 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则原创 2017-04-19 14:44:34 · 704 阅读 · 0 评论 -
【算法-java】打印出二叉树中结点值的和为输入整数的所有路径
import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.ListIterator;import static java.lang.System.out;/** * 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根原创 2017-05-16 16:47:37 · 432 阅读 · 0 评论 -
【算法-java】判断该数组是不是某二叉搜索树的后序遍历的结果
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。public class Solution { public boolean VerifySquenceOfBST(int [] sequence) { if(sequence.length==0)return false;原创 2017-05-16 14:59:51 · 269 阅读 · 0 评论 -
[java-算法-数据结构] 判断栈的弹出顺序是否正确
package stack;import java.util.Hashtable;import java.util.Stack;/** * 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。 * 假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列, * 但4,3,5,1,2就不可能是原创 2017-05-15 12:25:42 · 466 阅读 · 0 评论 -
[算法-java] 将一个矩阵按照从外向里以顺时针的顺序打印出每一元素
import java.util.*;import static java.lang.System.out;/** * 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字, * 例如,如果输入如下矩阵: * 1 2 3 4 * 5 6 7 8 * 9 10 11 12 * 13 14 15 16 * 则依次打印出数字 * 1,2,3,4,8,12,16,15原创 2017-05-14 15:09:56 · 561 阅读 · 0 评论 -
[算法-java] 数组转二叉树_(层次遍历)
import java.util.LinkedList;import static java.lang.System.out;/** * 数组转二叉树 * 测试用例: *{8,8,7,9,2,#,#,#,#,4,7},{8,9,2} * Integer.MIN_VALUE代表空节点# * Created by ZeHua on 2017/5/13. */public class Arr原创 2017-05-13 14:22:44 · 979 阅读 · 0 评论 -
详解KMP算法
<div class="clear"></div> <div class="postBody"> <div id="cnblogs_post_body"><p>KMP算法应该是每一本《数据结构》书都会讲的,算是知名度最高的算法之一了,但很可惜,我大二那年压根就没看懂过~~~</p>之后也在很多地方也都经常看到讲解KMP算法的文章,看久了好像也知道是怎么一回事,但总感觉有些地转载 2017-04-19 19:22:49 · 231 阅读 · 0 评论 -
【java-算法】【百度真题】度度熊去商场买一顶帽子问题
package baidu;import java.util.Scanner;/** * 度度熊想去商场买一顶帽子,商场里有N顶帽子,有些帽子的价格可能相同。 * 度度熊想买一顶价格第三便宜的帽子,问第三便宜的帽子价格是多少? * 首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格 * (价格均是正整数,且小于等于1000) * * 如果存在第三便宜的帽子,请输出原创 2017-05-23 15:01:59 · 603 阅读 · 0 评论 -
【java-算法】【华为真题】老师想知道从某某同学当中,分数最高的是多少,现在请你编程模拟老师的询问。当然,老师有时候需要更新某位同学的成绩.
package huawei;import java.util.Scanner;import static java.lang.System.out;/** * 题目描述: * 老师想知道从某某同学当中,分数最高的是多少,现在请你编程模拟老师的询问。当然,老师有时候需要更新某位同学的成绩. 输入包括多组测试数据。 每组输入第一行是两个正整数N和M(0 < N <= 30000,0 < M <原创 2017-05-22 13:37:11 · 823 阅读 · 0 评论 -
【java-算法】连续数组最大和
import java.util.*;/** * HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。 * 今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。 * 但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢? * 例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8原创 2017-05-29 16:11:43 · 292 阅读 · 0 评论