![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
文章平均质量分 74
爱很遥远
事有其道
展开
-
大数相乘计算
面试中经常会考的题目,两个大数相乘的问题。直接上代码: #include #include using namespace std; void multiply(string num1, string num2) { // 判断入参是否为空,是否为数字 // 省略 // 正负问题,符号与值分开处理,计算值后再加上 // 省略 // 乘积的位数是乘数的位数的和或者乘数位数和减原创 2016-04-20 00:01:33 · 264 阅读 · 0 评论 -
STL面试问题归总
面试中遇到几个跟STL相关的问题,自己在平时工作中用的不多,很多基础都比较欠缺。回来后查了一下,记录以供后续学习。 问题1、vector的clear函数会释放内存空间吗?如何主动释放被占用的内存空间? 当vector、string大量插入数据后,即使删除了大量数据(或者全部都删除,即clear)并没有改变容器的容量(capacity),所以仍然会占用着内存,只析构元素。 《Effect原创 2016-11-08 17:18:43 · 856 阅读 · 0 评论 -
最长公共子序列问题
程序员代码面试指南: 给定两个字符串str1和str2,返回最长公共子序列,存在多个时返回任意一个即可。 动态规划: str1长度设为M,str2长度设为N,构建dp[M][N]。d[i][j]表示str1[0:i]和str2[0:j]的最长公共子序列的长度。 1.第一列,d[i][0]表示str1[0:i]与str2[0]的最长公共子序列长原创 2017-02-28 21:42:20 · 261 阅读 · 0 评论 -
实现一个getMin功能的栈
题目:实现一个特殊的栈,在实现栈基本功能的基础上,再实现返回栈中最小元素的操作。要求pop、push、getMin时间复杂度都是O(1),设计时使用现成的栈结构。 用C++实现了一下。 template class MyStack { public: void Push(const T& t) { m_data.push(t); if原创 2017-02-12 21:47:44 · 484 阅读 · 0 评论 -
用两个栈实现一个队列的基本功能
题目:用两个栈实现队列的基本功能。 实现:一个栈用于接受输入,一个用于输出,仅当输出栈空时,将输入栈中的数据一次性压入输出栈。以下实现中,该动作在pop和front中进行。 C++实现如下: template class MyQueue { public: void Push(const T& t) { m_in.push(t); }原创 2017-02-12 23:00:05 · 392 阅读 · 0 评论 -
最长公共子串问题
程序员代码面试指南:最长公共子串问题 动态规划:dp[M][N]矩阵,d[i][j]原创 2017-03-01 20:41:04 · 466 阅读 · 0 评论 -
矩阵最短路径和
程序员面试指南中的一个题目: 给定一个矩阵m,从左上角开始每次只能向右或向下走,最后达到右下角的位置,路径上所有数字的累加和就是路径和,求所有路径中的最小路径和。 根据动态规划实现,构建矩阵dp,dp[i][j]为从左上角(0,0)到(i,j)的最小路径和。对于第一行,只能向右累加;对于第一列,只能向下累加。其他位置都是从其左侧或上面的点中选择较小的值再加上该节原创 2017-02-26 12:42:30 · 752 阅读 · 0 评论 -
最长递增子序列
程序员代码面试指南:最长递增子序列,给定数组arr,返回其最长递增子序列。 动态规划:生成数组dp, dp[i]表示以arr[i]结尾的最长子序列的长度。dp[0] = 1,dp[i]=max{dp[j]+1, j 从dp中得到最大值即为最长子序列的长度,其下标对应的arr中的值即为子序列的最后一个值。从该值开始向前遍历,如果前面一个值满足arr[j] C++实现: void getDP原创 2017-02-26 22:43:14 · 1013 阅读 · 0 评论 -
std::sort排序算法
std::sort的声明语法: template void sort ( RandomAccessIterator first,RandomAccessIterator last ); template void sort ( RandomAccessIterator first,RandomAccessIterator last, StrictWeakOrdering comp );原创 2017-06-07 18:13:25 · 16203 阅读 · 1 评论