C/C++/java常见算法面试题汇总
Guijun626
皮
展开
-
Java版各类常见的排序算法的实现及复杂度稳定性的分析---交换排序/选择排序/插入排序/归并排序/分布排序
交换排序冒泡排序这里和大家一起分享常见的几种排序算法交换排序所谓交换排序:就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置。 交换排序的特点是:将键值较大的记录向序列的尾部移动,键值较小的记录向序列的前部移动。冒泡排序冒泡排序思想:这里我们举例说升序,降序思想一样 每一趟比较两个相邻元素,如果前一个数比后一个数大,则我们进行交...原创 2018-07-19 20:08:57 · 717 阅读 · 0 评论 -
Java-数据结构-之字形打印二叉树-牛客剑指offer/LetCode
牛客题目题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。思路 根据题意,每行的节点的访问顺序是相反的,我们可以用两个栈来隔行存储,一个栈中根据“左结点->右结点”的顺序访问另一个栈的栈顶元素,而另一个栈根据“右子树->左子树”的顺序访问另一个栈的栈顶元素,直到两个栈都为...原创 2018-07-14 17:53:19 · 1035 阅读 · 0 评论 -
一看就懂的正则表达式匹配问题解法(牛客网/剑指offer正则表达式的匹配)
慢慢看完这篇,下次这题就不是问题!^_^题目描述请实现一个函数用来匹配包括’.’和’‘的正则表达式。模式中的字符’.’表示任意一个字符,而’‘表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹配!接下来请认真跟着我的思路走分析当模...原创 2018-07-28 18:58:50 · 1014 阅读 · 0 评论 -
最简单的顺时针打印矩阵算法
题目对于一个矩阵,请设计一个算法从左上角(mat[0][0])开始,顺时针打印矩阵元素。 给定int矩阵mat[][],以及它的维数 n 和 m,请返回一个数组,数组中的元素为矩阵元素的顺时针输出。测试样例:参数:[[1, 2], [3, 4]] 2 2返回:[1, 2, 4, 3]解题思路:最直观的方法:从外圈到里圈,一圈一圈的打印,向内再走一圈接着继续循环...原创 2018-08-27 08:11:40 · 1938 阅读 · 1 评论 -
LeetCode | Unique Binary Search Trees II
转载:https://blog.csdn.net/chilseasai/article/details/50083201题目:Given n, generate all structurally unique BST's (binary search trees) that store values 1...n....转载 2018-08-20 19:14:48 · 981 阅读 · 0 评论