![](https://img-blog.csdnimg.cn/20210103115630487.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
文章平均质量分 80
在求职过程中整理的知识分享出来。
loovi7
昔年曾见此湖图,不信人间有此湖。今日打从湖上过,画工还欠费工夫。
展开
-
最长的子串、子序列等问题的思考
文章目录字符串子串问题1.无重复字符的最长子串1.无重复字符的最长子串刷题时常遇到要求数组、字符串的最长子串、子序列等问题,还要考虑是否连续、是否有重复。在此做思考并整理,巩固自己的学习。文章按数组和字符串来分,也可以按使用的方法来分(dp,双指针等)。字符串子串问题1.无重复字符的最长子串无重复字符的最长子串思路:子串问题肯定要求连续,判断是否有重复可以用hashset,要求最长的,想到用滑动窗口法来动态地找符合条件的子串,再去看长度如何。方法:双指针(滑动窗口法)class So原创 2021-08-31 21:52:06 · 164 阅读 · 0 评论 -
背包问题(01、完全背包、多重背包)
文章目录01背包问题01背包问题每个物品只有一件,拿或不拿。使⽤⼆维数组,即dp[i][j] 表示从下标为[0-i]的物品⾥任意取,放进容量为j的背包,价值总和最⼤是多少。怎么推导出dp[i][j]呢?由dp[i - 1][j]推出,即背包容量为j,⾥⾯不放物品i的最⼤价值,此时dp[i][j]就是dp[i - 1][j]由dp[i - 1][j - weight[i]]推出, dp[i - 1][j - weight[i]] 为背包容量为j - weight[i]的时候不放物品i的最⼤价值,原创 2021-08-20 22:07:12 · 150 阅读 · 0 评论 -
八大排序算法(Java)
整理一下学习数据结构算法时遇到的排序问题,将几个经典的算法记录下来。包括原创 2021-08-07 10:27:49 · 106 阅读 · 0 评论 -
回溯算法实战
感觉回溯的题一直挺难做的,记录一下。组合专题从n个元素的集合,挑k个出来。组合0-返回范围 [1, n] 中所有可能的 k 个数的组合class Solution { List<List<Integer>> ans = new ArrayList<>(); List<Integer> path = new ArrayList<>(); public List<List<Integer>> co原创 2021-07-25 15:59:48 · 119 阅读 · 0 评论 -
链表的常见操作
反转链表判断链表有环找出两个链表的交点找出链表倒数第N个节点原创 2021-07-13 21:51:28 · 222 阅读 · 0 评论 -
二叉树的基本操作
二叉树三种遍历&递归、迭代方法先序遍历先序遍历-递归先序遍历-迭代本文针对笔试/面试过程中常考察的一些二叉树相关的操作进行整理,建议每一个都要掌握到一看到题就想到思路,默写出来的程度。二叉树三种遍历&递归、迭代方法先序遍历先序遍历-递归先序遍历-迭代...原创 2021-06-13 00:13:57 · 218 阅读 · 4 评论 -
二叉树原理与应用整理(cpp)
参考LeetCode教程部分程序参考https://blog.csdn.net/qq_34201858/article/details/104473016前序遍历前序遍历首先访问根节点,然后遍历左子树,最后遍历右子树。这个遍历顺序有点微妙。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; *原创 2020-07-25 10:44:17 · 312 阅读 · 2 评论 -
栈原理与用法整理(cpp)
参考LeetCode教程基本思想后入先出(LIFO)的数据结构。基本实现通过动态数组实现栈的结构。#include <iostream>class MyStack { private: vector<int> data; // store elements public: /** Insert an element into the stack. */ void push(in原创 2020-05-25 11:30:25 · 719 阅读 · 0 评论 -
队列原理与用法整理(cpp)
参考LeetCode的教程。思想两个线性数据结构,队列:FIFO,栈:LIFO。基本实现#include <iostream>class MyQueue { private: // store elements vector<int> data; // a pointer to indicate the start position int p_start;原创 2020-05-25 00:44:05 · 615 阅读 · 0 评论