算法
文章平均质量分 82
龙之竹
iOS / Java高级工程师
展开
-
字符串的全排列输出
要求:输入一个字符串,去掉重复元素后,把所有字符串排列情况打印出来如输入abcc ,则打印:abc,acb,bac,bca,cab,cba代码(用深度优先搜索实现):import java.util.Scanner;public class Main { static int []visit;//标记数组 static char [] result;//打印结果数组 static int...原创 2018-03-16 23:55:44 · 763 阅读 · 0 评论 -
128. 最长连续序列
给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。解法一:先来一个无脑ac的答案,该答案先进行排序,而类库中的快速排序时间复杂度为nlog(n),而题目要求的时间复杂度为O(n),但也神奇的通过了。c...原创 2018-08-15 23:41:37 · 566 阅读 · 0 评论 -
01背包问题总结
在n个物品中挑选若干物品装入背包,最多能装多满?假设背包的大小为m,每个物品的大小为A[i]样例如果有4个物品[2, 3, 5, 7]如果背包的大小为11,可以选择[2, 3, 5]装入背包,最多可以装满10的空间。如果背包的大小为12,可以选择[2, 3, 7]装入背包,最多可以装满12的空间。函数需要返回最多能装满的空间大小。思路:动态规划做法,找出状态转移方程,在 本...原创 2018-08-18 16:10:14 · 546 阅读 · 0 评论 -
78. 子集
给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。示例:输入: nums = [1,2,3]输出:[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]两种做法,一种递归,一种递推做法一(递归):class Solution { ...原创 2018-08-21 09:01:49 · 336 阅读 · 0 评论 -
使用Trie树实现网站对用户输入的敏感词打码
使用Trie树实现网站对用户输入的敏感词打码什么是Trie树? Trie树,又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来减少查询时间,最大限度地减少无谓的字符串比较,查询效率比哈希树高。 Trie树的核心思想是空间换时...原创 2018-09-07 17:32:36 · 798 阅读 · 0 评论 -
Leetcode算法代码解答总结——长文慎入!(持续更新)
——写在前面,复习算法一段时间了,在此记录一下自己写过的算法代码,算是做个总结,供自己以后回顾。43.字符串相乘给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例 2:输入: num1 = "12...原创 2018-04-25 01:49:58 · 4096 阅读 · 0 评论 -
面试怎么回答KMP算法相关问题
面试官问:你知道什么是KMP算法吗?说说你对KMP算法的理解。答:KMP算法是用来进行字符串匹配查找的,核心先求出Next数组。**什么是next数组?**我的理解是:next数组表示的是待查找的字符串的最大公共前后缀中的公共前缀的最后一个字符的下标,知道这个下标,就可以知道当匹配目标字符串出错时,目标字符串的指针怎么回退,而查找段落的指针不用回退,这样遍历一遍查找段落,就可以知道是否存在目标...原创 2019-03-20 09:56:27 · 3058 阅读 · 1 评论 -
使用C/C++做算法题——基础语法必备
本文目录如下一、map的使用二、vector动态数组的使用三、stl中栈stack、队列queue、集合set的使用四、字符串操作五、新建一个c++类及初始化六、c语言输入与输出七、未完待续......一直都使用java在做leetcode等算法题,今年7月毕业进入华为工作后,公司也有自己的oj平台,于是开始了每周公司oj平台做3道算法题的习惯。为了熟悉新东西,决定使用c/c++来做这些基础算...原创 2019-09-20 14:45:21 · 1465 阅读 · 2 评论 -
我的OJ草稿纸
#include <string>#include <iostream>#include <iomanip>#include <math.h>#include <float.h>#include <map>#include <stack>#include <set>#include &l...原创 2019-09-20 22:28:00 · 332 阅读 · 1 评论