算法
文章平均质量分 79
huangshulang1234
这个作者很懒,什么都没留下…
展开
-
几个面试经典算法题Java解答
几个面试经典算法题Java解答题目一:public class testClockwiseOutput { //顺时针打印一个矩阵 @Test public void test(){ int[][] num = new int[100][100]; int n = 4; int count =1; for(int i=0;i){ for(int j =0;j)转载 2017-11-26 08:43:52 · 27559 阅读 · 9 评论 -
Java面试常被问到的8大排序算法(分析+程序)
Java面试常被问到的8大排序算法(分析+程序)分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。1.转载 2018-01-31 09:42:27 · 605 阅读 · 0 评论 -
编程面试过程中常见的10大算法
编程面试过程中常见的10大算法以下是在编程面试中排名前10的算法相关的概念,我会通过一些简单的例子来阐述这些概念。由于完全掌握这些概念需要更多的努力,因此这份列表只是作为一个介绍。本文将从Java的角度看问题,包含下面的这些概念:1. 字符串如果IDE没有代码自动补全功能,所以你应该记住下面的这些方法。toCharArray() // 获得字符串对应的char数组转载 2018-01-20 10:05:17 · 3835 阅读 · 0 评论 -
坐在马桶上看算法:快速排序
坐在马桶上看算法:快速排序来源:51CTO博客作者:啊哈磊转自:http://developer.51cto.com/art/201403/430986.htm高快省的排序算法有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。假设我们现在对“6 1 2 7 9 3 4转载 2018-03-02 09:58:12 · 373 阅读 · 0 评论 -
五大常用算法——分治法,动态规划,回溯法,分支界限法,贪心算法
五大常用算法——分治法,动态规划,回溯法,分支界限法,贪心算法分治算法一、基本概念 在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并转载 2018-03-19 08:56:16 · 464 阅读 · 0 评论 -
基数排序
基数排序基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高转载 2018-03-19 08:57:47 · 199 阅读 · 0 评论