runner668的博客

古之立大事者,不惟有超世之才,亦必有坚忍不拔之志

图的深度搜索

终于进行到这一阶段了! 对于图问题,标准的解法是 标记数组加 dfs, 考查的抽象能力:情景问题转换为图的搜索问题。 第一个简单的问题:岛屿问题 #include <iostream> #include <vector&...

2018-09-09 17:52:34

阅读数:31

评论数:0

将整数拆分成四份

  class Solution(object): def helper(self, s, dotnum, ret, rets): if dotnum > 4 or (len(s) / 3 > 4-dotnum): ...

2018-09-09 17:16:02

阅读数:35

评论数:0

美团笔试-图的最短路径-树的深度-python

这道题不要求保存路径,因此就不用列举所有的可能性(实习也很难遍历完每种可能),上图题解就是一个很好的思考过程,我们不需要一个一个尝试,只需知道有种路径一定是先遍历短路径子树,最后再遍历长路径子树就可以了。 输入输出类似:因为实在找不到原题了 第一种解法:利用python数组列表保存...

2018-09-07 20:00:10

阅读数:58

评论数:0

设计LRU实现get和put操作

这道题重在数据结构的使用,要求是o(1)的时间复杂度完成上面两个操作,自然想到了哈希。 第一种解法:用数组实现哈希 #include <vector> #include <iostream&gt...

2018-09-04 23:25:39

阅读数:117

评论数:0

装箱问题

装箱问题是背包问题的变形,其中相对背包问题要简单一点。 一:装箱剩余问题 问题描述   有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。   要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。 输入格式   ...

2018-09-04 15:55:41

阅读数:70

评论数:0

公共子串加全排列

// INCLUDE HEADER FILES NEEDED BY YOUR PROGRAM // SOME LIBRARY FUNCTIONALITY MAY BE RESTRICTED // DEFINE ANY FUNCTION NEEDED // FUNCTION...

2018-09-04 00:14:09

阅读数:13

评论数:0

字符串的最大子串问题

基于字符串的最大子串问题是经常面试的问题,想要表现的好不但要会基础的方法,同时还要学会优化的算法。 常考的有两个问题: 1:两个字符串的最大公共子串(还可能是子序列) 2:同一个字符串中相同的最大子串问题 例如输入qweabcuwabcfw,输出结果为:重复字符串的长度3和位置4 一:求...

2018-09-03 16:04:48

阅读数:79

评论数:0

生成括号-回溯的应用

问题:n对括号可以有多少种匹配排列方式?比如两对括号可以有两种:()()和(()) 本文就是一个简单的练手:但是重在学习给递归添加约束得到我们预期的结果! 思路:问题可转化为:在一个string中包含两个字符:'('和')',他们出现的次数都为n,并且任何时候'('出现的次数总是&am...

2018-09-02 15:43:53

阅读数:41

评论数:0

二叉树中两个节点的最低公共祖先

求二叉树树中的两个节点的最低公共祖先是个有趣的问题,涉及到对递归的理解。 可以参考博客:https://www.cnblogs.com/felixfang/p/3828915.html 转自:http://gaotong1991.iteye.com/blog/2042770   方法一 ...

2018-09-02 10:33:08

阅读数:61

评论数:0

基于merge的归并排序

归并排序基于分制思想(二分法),可以将事件复杂度降低到 nlog(n),在很多情况下都能用到! 归并排序的重点是合并函数的partation()的书写。本文结合几个简单的例子,分别引出数组和单向链表的partation函数的书写。 一:数组的归并排序 /****合并函数****/ vo...

2018-09-01 16:55:12

阅读数:13

评论数:0

求连续子数组的最大和

一般考数组的题目,重在挖掘数字时间的规律,只要找到规律就可以写递推关系式,很容易编写基于循环的 或者是动态规划的程序。   第一种解法:基于sum更新的解法 class Solution { public:     int FindGreatestSumOfSubArray...

2018-09-01 14:44:56

阅读数:20

评论数:0

算法分析之动态规划三

       前两篇是在上算法课的时候对动态规划的初步了解,今面临找工作的需求,又把动态规划复习了一下,在理解上比之前更深了一点点,之前太偏向于解决单个问题。例如 0-1背包问题,现在站在程序设计与优化的角度结合两篇不错的博客来做个简单的整理。 本篇重在分析动态规划与递归的关系: 动态规划分两...

2018-09-01 10:59:22

阅读数:21

评论数:0

实现相对位置不变的奇数偶数排序

例如 将 12345  变成:13524 求最少的额交换次数 这里用到了排序的思想 #include <iostream> #include <vector> using namesp...

2018-08-31 09:22:04

阅读数:65

评论数:0

字符串的组合

一:用递归实现 #include<iostream> #include<vector> #include<cstring> #include&am...

2018-08-29 10:20:31

阅读数:30

评论数:0

STL——SET操作与并交差

一:set的集合运算 推荐一篇:https://blog.csdn.net/u014023993/article/details/47614381   #include <iostream> #include <set&...

2018-08-05 22:03:41

阅读数:27

评论数:0

之字形打印二叉树

/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(...

2018-06-20 18:56:29

阅读数:20

评论数:0

混合编译 extren 与c++重载机制

1.引言  C++语言的创建初衷是“a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C...

2018-05-04 15:03:26

阅读数:23

评论数:0

c++中lambda+function

1. lambda   lambda-introducer (捕获字段) lambda-parameter-declaration-list (变量列表) mutable-specification (捕获的变量可否修改) exception-specification (异常设定) ...

2018-05-01 20:27:13

阅读数:25

评论数:0

c++随机数生成

#include <iostream> #include <vector> #include <cmath> #include <ctime&a...

2018-05-01 18:57:43

阅读数:32

评论数:0

函数式编程和面向对象的编程对比与格式化字符串

     函数式编程是一种代码重用策略 ,编写的代码代码安全,可靠,可重用!     主要原则:使用的函数没有副作用,即函数的输出完全取决于输入,且不修改外部的任何东西。     主要特征:函数本身就是对象,可以将其作为参数传递给其它函数,还可以存储在变量中。     而在面向对象编程中,面向对象...

2018-05-01 16:23:21

阅读数:34

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭