
数据结构与算法
本系列文章以LeetCode、 剑指offer,、牛客网以及《数据结构与算法:python语言描述》为蓝本,分析了各种算法的思想,并给出了其代码、注释等。
LSayhi
https://github.com/LSayhi
微信公众号:AI有点可ai
展开
-
数据结构与算法(11): 一网打尽partition算法及其拓展
数据结构与算法(11): 一网打尽partition算法及其拓展Partition(划分)算法在快速排序、TopK问题、三色排序等问题上都能展现其巨大价值,本次文章讲述的是parition算法在这些算法问题上的应用以及partition算法是如何实现的,文章包括以下6个算法的实现:1.partition算法的单指针实现;2.partition算法的双指针实现;3.快速排序 基于双指针pa...原创 2019-05-05 00:28:30 · 698 阅读 · 0 评论 -
数据结构与算法(10):排序相关
数据结构与算法(10):排序相关本次内容主要是LeetCode sort tags下的题目的解法和思路,基础排序方法并没有在此记录,但可能会直接用在相关题目,以下是记录,题号与LeetCode对应。题目1:922. Sort Array By Parity IIGiven an array A of non-negative integers, half of the integers in...原创 2019-04-07 20:06:12 · 505 阅读 · 0 评论 -
数据结构与算法 (9):滑动窗口算法
数据结构与算法 (9):滑动窗口算法在算法题中,有一类题名曰:Sliding window(滑动窗口),其命名得益于其算法运行过程中,有一个显示或隐式存在的window(窗口).在解决某些问题上,可以起到降低时间复杂度为O(n)的效果。下面举两个例子来描述这种算法。例子1:给定一组大小为n的整数数组,计算长度为m的子数组和的最大值例如,数组为:array= {1,0,0,8,6,1,1},m...原创 2019-04-02 18:23:51 · 1710 阅读 · 0 评论 -
数据结构与算法 学习笔记(8):字典、集合、哈希表
数据结构与算法 学习笔记(8):字典、集合、哈希表本次文章记录的是和字典、集合、哈希表等数据结构相关的LeetCode算法题(题号与LeetCode对应),包括其构造和使用,针对每一题或一类题给出了相应的代码和思路分析,并有相应的注释。题目1:1. Two SumGiven an array of integers, return indices of the two numbers suc...原创 2019-03-31 23:08:12 · 545 阅读 · 0 评论 -
数据结构与算法 学习笔记(7):二叉树和树
数据结构与算法 学习笔记(7):二叉树和树本次文章主要记录了最近在LeetCode上刷的有关与二叉树和树的题目,主要涉及深度优先、广度优先、递归与非递归,并给出了算法和算法分析,如有错漏或更好的解法,欢迎到文末github中提交RP。注:题号与LeetCode对应题目1:100. Same TreeGiven two binary trees, write a function to ch...原创 2019-03-24 22:32:58 · 621 阅读 · 0 评论 -
数据结构与算法 学习笔记(6): LeetCode 栈和队列 综合应用
数据结构与算法 学习笔记(6): 栈和队列 综合应用本次笔记记录了近段时间刷LeetCode时遇到的关于栈和队列应用的一些问题,并下文中给出了相应的思路说明和代码,题目编号与LeetCode对应。如发现错漏或更好的方法,欢迎到文末的github中pull request。题目1: 71. Simplify PathGiven an absolute path for a file (Unix...原创 2019-03-17 00:01:11 · 533 阅读 · 0 评论 -
数据结构与算法 学习笔记(4):列表和链表
数据结构与算法 学习笔记(4):列表和链表本次笔记主要记录Leetcode题集中,关于List系列的部分题目,思路和代码将在下文给出,如本文有错漏或你有更好的方法,欢迎到github中pull request.题目1: 21.合并有序链表 21. Merge Two Sorted Lists"""Merge two sorted linked lists and return it as ...原创 2019-03-17 14:28:11 · 395 阅读 · 0 评论 -
数据结构与算法 学习笔记(5):字符串
数据结构与算法 学习笔记(5)- 字符串本次笔记记录了LeetCode中关于字符串的一些问题,并给出了相应的思路说明和代码。题目编号与LeetCode对应,方便查找。题目1:LeetCode 13. Roman to IntegerRoman numerals are represented by seven different symbols: I, V, X, L, C, D and ...原创 2019-03-10 23:08:04 · 889 阅读 · 0 评论 -
数据结构与算法 学习笔记(3)- 表反转与插入排序
数据结构与算法 学习笔记(3):线性表反转与插入排序本次文章,介绍了线性表中顺序表和链表的反转和插入排序操作。1.顺序表反转2.链表反转3.顺序表插入排序4.链表插入排序1.顺序表反转这个比较简单,就是把前后元素互换,然后第二和倒二元素互换,依次类推def reverse(self): elems = ...原创 2019-03-05 23:29:23 · 510 阅读 · 0 评论 -
数据结构与算法 学习笔记(2)- 迭代器与生成器
Python数据结构与算法 学习笔记(2)- 迭代器与生成器本文转自:https://www.cnblogs.com/vipchenwei/p/6991204.html最近学习时遇到了迭代器、生成器的理解,这篇文章介绍的十分清晰,于是就转来了。本文讲述了以下几个方面:1.何为迭代,何为可迭代对象,何为生成器,何为迭代器?2.可迭代对象与迭代器之间的区别3.生成器内部原理解析,for循环...原创 2019-03-05 10:13:57 · 450 阅读 · 0 评论 -
数据结构与算法 学习笔记(1)- 基础知识
数据结构与算法系列 学习笔记 (1) - 基础知识作为计算机科学与技术领域核心之一,数据结构与算法对程序的设计具有重要的作用,因此值得深入学习。本人将以《数据结构与算法:Python语言描述》为基础学习对象,记录下完整的学习过程。此次文章内容主要涉及数据结构与算法的基础问题,以及python语言的一些特性。一、算法及算法分析1.1 问题,问题实例,算法问题:一个需要解决的具体需求称作问题...原创 2019-03-05 10:08:51 · 451 阅读 · 0 评论