![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
jenny6j
这个作者很懒,什么都没留下…
展开
-
字符串的全排列与组合算法
全排列在笔试面试中很热门,因为它难度适中,既可以考察递归实现,又能进一步考察非递归的实现,便于区分出考生的水平。所以在百度和迅雷的校园招聘以及程序员和软件设计师的考试中都考到了,因此本文对全排列作下总结帮助大家更好的学习和理解。对本文有任何补充之处,欢迎大家指出。首先来看看题目是如何要求的(百度迅雷校招笔试题)。一、字符串的排列用C++写一个函数, 如 Foo(const char *转载 2014-02-24 21:38:08 · 572 阅读 · 0 评论 -
微软算法经典2 最长公共子序列问题
题目这样:求两个字符串的最大公共子序列。 不是让写代码,利用动态规划的思想,求出最大公共子序列,并且要把那个图(下面的图1)画出来。 下课后,翻出老师的课件,仔细看了看,原来只要理解了原理,3分钟就可以把作业做完,好吧,以后好好听课,少玩。另外,打开电脑,花了几分钟完成了编码。 于是,我就想了想,还有什么其他方法没有?除了动态规划的思想,我能想到的就是蛮力转载 2014-07-12 14:52:57 · 769 阅读 · 0 评论 -
经典算法5一个矩阵中最大的二维矩阵(元素和最大).
求一个矩阵中最大的二维矩阵(元素和最大).如:1 2 0 3 42 3 4 5 11 1 5 3 0中最大的是:4 55 3要求:(1)写出算法;(2)分析时间复杂度;(3)用C写出关键代码此第35题与第3题相类似,一个是求最大子数组和,一个是求最大子矩阵和。3.求子数组的最大和题目:输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个转载 2014-07-12 15:08:06 · 2313 阅读 · 0 评论 -
微软面试100题算法(1)实现一个字符匹配
问题:实现一个挺高级的字符匹配算法:给一串很长字符串,要求找到符合要求的字符串,例如目的串:1231******3***2 ,12*****3这些都要找出来其实就是类似一些和谐系统。。。。。分析:这题的真正意思就是,给你一个目标串,如“123”,只要一个字符串里面同时包含1、2和3,那么这个字符串就匹配了。系统越和谐,说明错杀的可能行也就越大。加转载 2014-07-12 09:42:03 · 894 阅读 · 0 评论 -
经典面试题之7 编写类似strstr/strcpy/strpbrk的函数
原文:http://blog.csdn.net/v_JULY_v/article/details/6417600 面试考察的是你对基础知识的掌握程度,及编程能力是否过硬的一种检测,所以,扎实基础知识,提高编程能力,比去看什么所谓的面经,或去背面试题目的答案强多了。 很多中、小型公司自己的创造能力,包括人力,物力资源都有限,所以,他们的面试题目除了copy一些大公转载 2014-07-13 15:11:17 · 1816 阅读 · 0 评论 -
经典算法之6:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小
[微软]有两个序列a,b,大小都为n,序列元素的值任意整数,无序; 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小分类: 算法与数据结构 2012-04-29 01:08 2813人阅读 评论(0) 收藏 举报微软算法n2tree优化c搜了网上的一些文章,看到一个看似很巧的搜索方法,描述于文http://blog.csdn.net/tianshuai转载 2014-07-12 15:15:01 · 3295 阅读 · 0 评论 -
经典算法4之最长递增子序列
最长递增子序列(Longest Increase Subsequence)问题描述:这里subsequence表明了这样的子序列不要求是连续的。比如说有子序列{1, 9, 3, 8, 11, 4, 5, 6, 4, 19, 7, 1, 7 }这样一个字符串的的最长递增子序列就是{1,3,4,5,6,7}或者{1,3,4,5,6,19} 方法1: 假设我们的初始的序列S1。那转载 2014-07-12 15:04:10 · 572 阅读 · 0 评论 -
微软算法经典3 求最长递减子序列
求一个数组的最长递减子序列比如{9,4,3,2,5,4,3,2}的最长递减子序列为{9,5,4,3,2}分析:典型的动态规划题目,对每一个数计算由它开始的最大递减子序列的个数,并存放到一张映射表中。例如对数组a[n]有……然后利用求得的映射表及最大子序列个数获取原数组中的元素。对于{9,4,3,2,5,4,3,2}我们求得最大子序列个数为nMaxLe转载 2014-07-12 14:54:28 · 535 阅读 · 0 评论 -
使用两个队列实现一个栈
先普及小知识:STL 中栈的使用方法(stack) 基本操作:push(x) 将x加入栈中,即入栈操作pop() 出栈操作(删除栈顶),只是出栈,没有返回值top() 返回第一个元素(栈顶元素)size() 返回栈中的元素个数empty() 当栈为空时,返回 trueSTL 中队列的使用(queue)基本操作:原创 2014-06-20 09:07:11 · 1117 阅读 · 0 评论 -
学以致用一:得到数组的最后一个元素。
如题上,通常的思想是遍历一遍啦,这里有个比较有意思的方法(程序员面试宝典上有相应的题 四版,p78)利用了指向数组的指针来完成:[cpp] view plaincopy// 得到数组的最后一个数 - 使用指向数组的指针来完成 #include int main() { printf(" 得到数组的最后一个原创 2014-06-28 21:29:03 · 2756 阅读 · 0 评论 -
有关数组的面试题
数组是最基本的数据结构,关于数组的面试题也屡见不鲜,本文罗列了一些常见的面试题,仅供参考,如果您有更好的题目或者想法,欢迎留言讨论。目前有以下18道题目,如有好的题目,随时更新。 数组求和求数组中的最大值和最小值求数组中的最大值和次大值求数组中出现次数超过一半的元素求数组中元素的最短距离求两个有序数组的共同元素求三个数组的共同元素找出数组中唯一重复的元素转载 2014-04-12 21:48:11 · 908 阅读 · 0 评论 -
C++实现删除字符串中所有指定字符算法
C++实现删除字符串中所有指定字符算法 (2008-11-02 20:06:26)转载▼标签: 字符串处理 c 字符串 it分类: C/C++技术//VC++ 6.0编译通过# include # include using namespace std;int转载 2014-02-27 15:21:36 · 7456 阅读 · 0 评论 -
经典笔试题 最长公共子串(连续)问题
最长公共子串(连续)问题动态规划有一个经典问题是最长公共子分类: 编程练习 数据结构和算法序列,但是这里的子序列不要求连续,如果要求序列是连续的,我们叫公共子串,那应该如何得到这个串呢?最简单的方法就是依次比较,以某个串为母串,然后生成另一个串的所有长度的子串,依次去母串中比较查找,这里可以采用先从最长的子串开始,减少比较次数,但是复杂度依然很高转载 2014-08-31 09:28:04 · 652 阅读 · 0 评论