/algo_practice

数据结构和算法练习,php,golang刷leetcode

Primary LanguagePHP

数据结构和算法练习

Success belongs to the persevering!

leetcode

编号 php (leetcode/php) go (leetcode/go/algo) c
001.两数之和 001.php 001.go -
002.两数相加 002.php 002.go -
003.无重复字符的最长子串 003.php 003.go -
004.寻找两个正序数组的中位数 04.php - -
005.最长回文子串 05 005.go -
006.Z 字形变换 006.php 006.go -
007.整数反转 07.php 007.go -
008.字符串转换整数 (atoi) 08.php - -
009.回文数 09.php 009.go -
010.正则表达式匹配 10.php - -
011.盛水最多的容器 11.php 011.go
012.整数转罗马数字 12.php .
013.罗马数字转整数 13.php .
014.最长公共前缀 014.php 014.go
015.三数之和 015.php 015.go
016.最接近的三数之和 16.php .
017.电话号码的字母组合 - -
018.四数之和 018.php -
019.删除链表的倒数第N个节点 019.php 019.go
020.有效的括号 20.php 020.go
021.合并两个有序链表 021.php -
022.括号生成 22.php -
023.合并K个升序链表 23.php -
024.两两交换链表中的节点 24.php -
025.K 个一组翻转链表 25.php -
026.删除排序数组中的重复项 26.php .
027.移除元素 27.php 027.go
028.实现 strStr() 028.php .
029.两数相除 .
030.串联所有单词的子串 . .
031.下一个排列 31.php .
032.最长有效括号 032.php 032.go
033.搜索旋转排序数组 33.php
034.在排序数组中查找元素的第一个和最后一个位置 034.php
035.搜索插入位置 035.搜索插入位置.php
036.有效的数独
037.解数独
038.外观数列
039.组合总和
040.组合总和 II 040.combinationSum2.php
041.缺失的第一个正数 041.php
042.接雨水 042.php
043.字符串相乘
044.通配符匹配
045.跳跃游戏 II
046.全排列
047.全排列 II
048.旋转图像
049.字母异位词分组
050.Pow(x, n)
051.N 皇后
052.N皇后 II
053.最大子序和 053.php 053.go
054.螺旋矩阵 II
056.合并区间 056.合并区间.php
064.最小路径和 064.php 064.go
066.加一 066.php 066.go
070.爬楼梯 070.php 070.go
071.简化路径 071.简化路径.php
075.颜色分类 075.颜色分类.php
083.删除排序链表中的重复元素 083.go 083.c
084.柱状图中最大的矩形 084.php 084.go
088.合并两个有序数组 088.php
094.二叉树的中序遍历 tree/094.php
096.不同的二叉搜索树 tree/96.php
098.验证二叉搜索树 098.php
101.对称二叉树 101.对称二叉树.php
102.二叉树的层序遍历 102.php
103.二叉树的锯齿形层次遍历 103.二叉树的锯齿形层次遍历.php
104.二叉树的最大深度 104.php
107.二叉树的层次遍历 II 107.二叉树的层次遍历II.php
111.二叉树的最小深度 111.二叉树的最小深度.php
120.三角形最小路径和 120.php 120.go
122.买卖股票的最佳时机 122.php
126.单词接龙 II 126.单词接龙II.php
127.单词接龙 127.单词接龙.php
136.只出现一次的数字 136.只出现一次的数字.php
141.环形链表 141.php 141.go
144.二叉树的前序遍历 tree/144-recursion.php
145.二叉树的后序遍历
169.多数元素
189.旋转数组 189.php 189.go
198.打家劫舍 198.php 198.go
206.反转链表
208.实现 Trie (前缀树)
211.添加与搜索单词 - 数据结构设计
215.数组中的第K个最大元素 heap/215-数组中的第K个最大元素.php
239.滑动窗口最大值 heap/239-滑动窗口最大值.php
283.移动零 283.php 283.go
300.最长上升子序列 300.php
324.摆动排序 II
349.两个数组的交集
350.两个数组的交集 II 350.php 350.go
409.最长回文串
564.寻找最近的回文数
703.数据流中的第K大元素 703-数据流中的第K大元素.php
796.旋转字符串 796.php

C

链表

LRU单链表实现
单链表反转
求链表的中间节点
单链表字符串是否是回文串
链表中的环问题(是否有环,连接点,环长,碰撞点,总长度)
两个有序链表的合并
删除链表倒数第N个节点(一次遍历)

数组顺序栈
链表链式栈

队列

数组实现顺序队列
链表实现一个链式队列
循环队列

排序

排序算法

PHP

链表

单链表的基本操作(创建,删除特定节点,反转,lru,找中间节点,回文判断,是否有环,环长,总长度)

  • 跳表

验证大小中括号是否成对闭合匹配

  • 栈和队列互相实现

堆基本操作,几种形式的堆化,堆排序
动态数据流求top k,动态数据流求中位数

二分查找

基本二分查找
变形二分查找

散列表

散列表(散列冲突)

二叉树基本操作和前中后遍历
二叉树层级遍历
二叉查找树
2-3树 b树
B-tree操作
B+tree
红黑树演变

  • 红黑树