![](https://img-blog.csdnimg.cn/20200224113319193.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
算法与数据结构
以码平川
这个作者很懒,什么都没留下…
展开
-
优先队列的使用方法(自定义排序)
优先队列的使用方法优先队列的使用方法(自定义排序)原创 2020-09-05 21:30:00 · 481 阅读 · 0 评论 -
动态规划---面试复习
文章目录1.动态规划解题思路状态最优子结构无后效性转移方程分类讨论,细心枚举2.线性DP概述分类LISLCS数字三角形背包特长特长DP状态沿着各个维度线性增长3.基础模型300.最长上升子序列LIS1143.最长公共子序列LCS120.三角形的最小路径和4.习题练习198.打家劫舍354.俄罗斯套娃信封问题72.逻辑距离1.动态规划解题思路状态最优子结构无后效性转移方程分类讨论,细心枚举2.线性DP概述分类LISLCS数字三角形背包特长特长DP状态沿着各个维度线性增长3.基.原创 2020-09-02 08:44:06 · 166 阅读 · 0 评论 -
C++语言:memset函数(慎用) 和 fill函数
转载自:C/C++ 之 fill ()的运用https://blog.csdn.net/weixin_43826242/article/details/90607516)C语言:memset函数 和 fill函数1.memset用法:只能初始化成为0或者-1两个数值#include <cstring>memset(a, 0, sizeof(a));memset(a, -1, sizeof(a));2.fill用法:可以使用任意数值填充固定区间int a[1000原创 2020-09-01 08:37:07 · 180 阅读 · 0 评论 -
pat甲级题库
pat甲级题库文章目录pat甲级题库1020 Tree TraversalsInput Specification:Output Specification:Sample Input:Sample Output:题解:1053 Path of Equal Weight (30分)Input Specification:Output Specification:Sample Input:Sample Output:题解:1043 Is It a Binary Search Tree (25分)Input S原创 2020-08-31 23:20:50 · 1313 阅读 · 0 评论 -
leetcode 买卖股票【六题集合】
参考博客:leetcode 买卖股票【六题集合】121.买卖股票的最佳时机122.买卖股票的最佳时机 II原创 2020-08-31 20:38:10 · 123 阅读 · 0 评论 -
2019华为暑期实习机试题 Java(给定一个二维0/1矩阵,找到并返回其中由1组成的最大正方形面积。)--动态规划
分析:这个题暴力解也能过了,最佳解法使用动态规划的思想:本题考虑的是正方形的面积,所以算出最长的边长就好。我们假设dp[i][j] 是以 [i][j] 为顶点的最大的正方形边长。我们可以写出状态转移方程:若 [i][j] 这个点是1 :那么dp[i][j]=min{dp[i-1][j-1],dp[i-1][j],dp[i][j-1]}+1。否则 : dp[i][j]=0暴力解法:遍历矩阵每个元素,以这个元素作为正方形的左上角,寻找最大面积。复杂度为O(n*n)。这种算法存在大量的重复计算比如: .转载 2020-08-31 20:11:23 · 566 阅读 · 0 评论 -
面试-------->反转链表和快排和插入排序
反转链表和快排和插入排序面试会遇到的问题反转链表和快排原创 2020-08-31 16:02:30 · 97 阅读 · 0 评论 -
算法笔记复习
算法笔记复习文章目录算法笔记复习3.0 常用函数以及定义3.1 常用函数**ctype.h****cstring****algorithm****cmath****string**4.0 算法高效技巧4.1 打表法的使用规则4.2 活用递推B1040 有几个PAT (25分)相似题型:A1093,B1045,A1101B1045 快速排序5.0 C++标准模板库5.1 vector特点5.2 set特点5.3 stringA10606.0 搜索专题6.1 深度优先搜索Depth First Search原创 2020-08-28 20:38:03 · 223 阅读 · 0 评论 -
IDEA上撤销和返回撤销的快捷键设置
1.点击左上角的File选择Settings2.选择左边的KeyMap后在右边的搜索框中搜索undo即可3.选中该项,右键选择Add Keyboard Shortcut4.直接控件选中后点击你想设置的快捷键5.取消撤回也是同理,搜索redo同样设置...转载 2020-08-25 11:30:29 · 7794 阅读 · 2 评论 -
c++ 字符串流 sstream
c++ 字符串流 sstream文章目录c++ 字符串流 sstream1.0**重复利用stringstream对象**1.1 例题2.0 **stringstream的用法总结**2.1.int类型转string类2.2 字符数组也可以和string类相互转换2.3 stringstream流中的数据以空格分割开2.4 例题字符串 I/O 实现,定义于头文件 我们一般使用使用stringstream对象简化类型转换,准确的说,我们一般使用stringstream里面的运算符重载operato原创 2020-08-16 10:38:30 · 947 阅读 · 0 评论 -
一道面试题 67. 二进制求和
67. 二进制求和给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"示例 2:输入: a = "1010", b = "1011"输出: "10101"提示:每个字符串仅由字符 ‘0’ 或 ‘1’ 组成。1 <= a.length, b.length <= 10^4字符串如果不是 “0”,就都不含前导零。方法一:模拟思路和算法这里我们需要理解原创 2020-07-20 23:57:31 · 116 阅读 · 0 评论 -
使用Clion无代码提示的情况原因以及解决方法
是否可以从“ 文件”菜单激活“ 省电模式” ? 如果将其激活,则可能会禁用某些代码解析功能。原创 2020-06-29 22:12:22 · 13238 阅读 · 4 评论 -
java List去除重复数据的五种方式
1.使用LinkedHashSet删除arraylist中的重复数据numbersList是包含整数的arraylist,其中一些是重复的数字,例如1,3和5.我们将列表添加到LinkedHashSet,然后将内容返回到列表中。结果arraylist没有重复的整数。import java.util.ArrayList; import java.util.Arrays; import java.util.LinkedHashSet; public class ArrayListExam原创 2020-06-22 19:41:28 · 530 阅读 · 1 评论 -
算法初步——递归与分治
主要内容预览全排列实现结合全排列实现八皇后全排列实现八皇后回溯法优化八皇后中对角线判断问题八皇后问题是如何进行回溯的使用该解法能进行解决的题型LeetCode46. 全排列LeetCode47. 全排列 II...原创 2020-06-14 11:11:02 · 114 阅读 · 0 评论 -
1071:括号匹配
1071:括号匹配Time/Memory Limit:1000 MS/32768 K Submitted: 818 Accepted: 176 Problem Description给个字符串,判断里面的左括号的数量是否等于右括号. Input输入数据有多组,每组一个字符串(长度小于200),里面可能包含的括号有:{}[]() Output每组数据的输出有一行,形式:...原创 2018-11-06 16:55:06 · 173 阅读 · 0 评论 -
1001:二叉树的操作——遍历2
1001:二叉树的操作——遍历2Time/Memory Limit:1000 MS/32768 K Submitted: 69 Accepted: 47 Problem Description按照给定的扩展二叉树前序遍历序列建立相应的非空二叉树,要求采用二叉链表进行存储表示,并按中序次序打印叶子结点,按后序次序打印度为2的分支结点。 Input第一行为一个整数n,表示以下有n...原创 2018-11-07 17:12:21 · 419 阅读 · 0 评论 -
1002:二叉树的按值操作
Problem Description有一棵二叉树,其节点值为字符型并假设各值互不相等,采用二叉链表存储表示。现输入其扩展二叉树的前序遍历序列,建立二叉树,设计一个子函数,要求在该二叉树中查找值为x的结点,若找到返回该结点的指针,没找到返回NULL。在main函数中调用该子函数,找到(即返回结点指针)时,再次输出该结点的值;没找到(即返回NULL)时,输出“not find”。 Input...原创 2018-11-11 16:03:00 · 652 阅读 · 0 评论 -
C++ 把引用作为返回值
这里所要解决的问题是哈夫曼算法中最核心的Select函数,选取两个权值最小的根节点。void Select(int &min1,int &min2,int m);C++函数参数和返回值三种传递方式:值传递、指针传递和引用传递 (着重理解)引用与指针的比较引用是 C++中的概念,初学者容易把引用和指针混淆一起。一下程序中,n 是m 的一个引用(reference),m...原创 2018-11-19 21:36:31 · 161 阅读 · 0 评论 -
9059:链接存储转为顺序存储
Problem Description问题描述:设有一棵二叉树,其节点值为字符型并假设各值互不相等,采用二叉链表存储表示。现输入其扩展二叉树的前序遍历序列,建立该二叉链表,要求将该二叉树的二叉链表存储结构转换为顺序存储结构,并输出各数组元素,空二叉树用'#'表示。 Input第一行为一个整数n,表示以下有n组数据,每组数据占一行,为扩展二叉树的前序遍历序列,每组数据的长度不会超过50。...原创 2018-11-27 15:43:16 · 451 阅读 · 0 评论 -
9101:后缀表达式计算
Problem Description规则如下:式中不包含括号,运算符放在两个操作数的后面,所有的计算按运算符出现的顺序,严格从左向右进行,不再考虑运算符的优先级,如:(2 + 1) * 3,在此处即表示为2 1 + 3 *请编程,计算后缀表达式的值。 Input输入数据有多组,每组数据占一行,代表一个后缀表达式,每行不超过50个字符;每行由多个元素(操作数,运算符,终结符)组成...原创 2018-11-27 15:49:25 · 211 阅读 · 0 评论 -
1003:深度优先遍历(DFS)&广度优先遍历(BFS)
Problem Description设有一连通有向图,其顶点值为字符型并假设各值互不相等,采用邻接表表示法存储表示,求其广度优先遍历序列。 Input有多组测试数据,每组数据的第一行为两个整数n和e,表示n个顶点和e条边(0<n<20);第二行为其n个顶点的值,按输入顺序进行存储;接着有e行,表示e条边的信息,每条边信息占一行,包括边所依附的顶点下标i和j,数据之间用空格...原创 2018-12-08 10:22:56 · 302 阅读 · 0 评论 -
9111:有序顺序表的插入
Problem Description有一顺序表List,表中的元素值递增有序,现要求将给定值插入该顺序表中,同时保持顺序表的递增有序性。插入完成后,输出新表的内容。(假设无表满和重复值情况) Input有多组数据,每组数据占两行。每组第一行有两个整数,第一个为表长n(0<n<50),第二个为值x;第二行为表的各元素值。 Output每组数据的输出占一行,具体输...原创 2018-10-30 17:04:53 · 1509 阅读 · 0 评论