摘要: 准备笔试,在看相关知识,看到这个问题,如何使用两个队列模拟一个栈,在参考了相关知识下,实现了代码如下: 阅读全文
posted @ 2017-11-04 17:35 JiaJoa 阅读(1727) 评论(0) 推荐(0) 编辑
摘要: 选择排序算法是另外一种简单的排序算法,该算法的时间复杂度最好时为O(n^2),最差时为O(n^2),空间复杂度为O(1)。另外该算法是不稳定的,在序列较小时效果较好。 该算法的基本思想是:不断地取出待排序序列的最小值,若按从小到大排序,就不断地将每次的最小值放在序列前端,直到待排序序列的元素比较完为 阅读全文
posted @ 2017-11-03 14:58 JiaJoa 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 插入排序是排序算法中一种经典的排序算法,该算法的时间复杂度最好时为O(n),最差时为O(n^2),空间复杂度为O(1),该算法也是一种稳定的排序算法。该种算法较适合大部分已有序时的排序问题。相比较而言,冒泡排序则更适合较小的序列排序。 该排序算法的思想是:不断地将当前数字插入到一个有序序列中,直到最 阅读全文
posted @ 2017-11-03 14:35 JiaJoa 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 如何在时间复杂度为O(n)内找出数组中第二大的数字? 通过设置两个变量,一个保存最大值,一个保存第二大值,通过在找最大值的过程中,原来的最大值逐渐变为第二大值。一种实现代码如下(Java版): 阅读全文
posted @ 2017-11-03 12:26 JiaJoa 阅读(1016) 评论(0) 推荐(0) 编辑
摘要: 冒泡排序算法是一种较为简单的并且稳定的排序算法,该算法的时间复杂度最好为O(n),最差时为O(n^2),需要的空间复杂度为O(1)。 这里的算法稳定性是指 经过排序后,各元素仍然能保持它们在排序之前的相对次序,就称该算法是稳定的,反之,则为不稳定的。 例如,一组数排序前是a1,a2,a3,a4,a5 阅读全文
posted @ 2017-11-03 11:46 JiaJoa 阅读(5804) 评论(1) 推荐(0) 编辑
摘要: 给定一个整数数组,求取该数组的最大子数组之和,代码如下(部分来源其他博客,如有侵权,请私信): 阅读全文
posted @ 2017-11-03 11:16 JiaJoa 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 一个整形数组,里面存的都是正整数,例如2,1,3,4,5,7,现在要求每隔m个数删除一个数,进行到数组尾部后,再循环至数组首部,如此反复,直到数组的所有数删除为止,求最后一个被删除的数在数组中的原始下标。 例如:对于数组 arr = [2,1,3,4,5,7],若 m = 2时,整个删除过程(把删除 阅读全文
posted @ 2017-10-26 10:52 JiaJoa 阅读(955) 评论(0) 推荐(0) 编辑
摘要: 笔试遇到这样一个题目: 在如下括号里填写适当代码,使得输出结果为:HelloWorld. 经过一番查找,得出如下答案: 分析:第一次运行main方法,args参数不为null,即args==null为false,由于逻辑或运算||在左边运算为false的情况下会继续运行边表达式, 表达式 new O 阅读全文
posted @ 2017-10-08 16:04 JiaJoa 阅读(640) 评论(0) 推荐(0) 编辑
摘要: 原题描述如下: 通过对各个数字对应的英文单词的分析,可以发现一些规律: 字母Z为0独占,字母W为2独占,字母U为4独占,字母X为6独占,字母G为8独占; 在过滤一遍0、2、4、6、8后,字母O为1独占,字母H为3独占,字母F为5独占,字母S为7独占; 再次过滤0、1、2、3、4、5、6、7、8后,剩 阅读全文
posted @ 2017-10-02 19:33 JiaJoa 阅读(602) 评论(0) 推荐(0) 编辑
摘要: 参考网上相关blog,对Java字符串的匹配问题进行了简单的比较和总结,主要对String类的matches方法与Matcher类的matches方法进行了比较。 对Matcher类的matches()、find()和lookingAt()三个容易混淆的方向进行了比较说明。 在这里对参考的相关blo 阅读全文
posted @ 2017-05-12 21:04 JiaJoa 阅读(865) 评论(0) 推荐(0) 编辑