剑指Offer (汇总)
刷完剑指Offer很久了,前几天想起来去年开通的博客园,正好把刷题笔记整理一下
刷题平台:牛客网
刷题语言:Python
**链表(8道)**
[剑指Offer 3. 从尾到头打印链表 (链表)](https://www.cnblogs.com/huangqiancun/p/9775456.html)
剑指Offer 14. 链表中倒数第k个结点 (链表): https://www.cnblogs.com/huangqiancun/p/9782576.html
剑指Offer 15. 反转链表 (链表): https://www.cnblogs.com/huangqiancun/p/9782581.html
剑指Offer 16. 合并两个排序的链表 (链表): https://www.cnblogs.com/huangqiancun/p/9784264.html
剑指Offer 25. 复杂链表的复制 (链表): https://www.cnblogs.com/huangqiancun/p/9789991.html
剑指Offer 36. 两个链表的第一个公共结点 (链表): https://www.cnblogs.com/huangqiancun/p/9797263.html
剑指Offer 55. 链表中环的入口结点 (链表): https://www.cnblogs.com/huangqiancun/p/9805173.html
剑指Offer 56. 删除链表中重复的结点 (链表): https://www.cnblogs.com/huangqiancun/p/9808851.html
二叉树(12道)
剑指Offer 4. 重建二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9775476.html
剑指Offer 17. 树的子结构 (二叉树): https://www.cnblogs.com/huangqiancun/p/9784299.html
剑指Offer 18. 二叉树的镜像 (二叉树): https://www.cnblogs.com/huangqiancun/p/9784305.html
剑指Offer 22. 从上往下打印二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9789961.html
剑指Offer 24. 二叉树中和为某一值的路径 (二叉树): https://www.cnblogs.com/huangqiancun/p/9789982.html
剑指Offer 38. 二叉树的深度 (二叉树): https://www.cnblogs.com/huangqiancun/p/9797276.html
剑指Offer 39. 平衡二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9797280.html
剑指Offer 57. 二叉树的下一个结点 (二叉树): https://www.cnblogs.com/huangqiancun/p/9808870.html
剑指Offer 58. 对称的二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9808886.html
剑指Offer 59. 按之字形顺序打印二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9808897.html
剑指Offer 60. 把二叉树打印成多行 (二叉树): https://www.cnblogs.com/huangqiancun/p/9808909.html
剑指Offer 61. 序列化二叉树 (二叉树): https://www.cnblogs.com/huangqiancun/p/9809252.html
二叉搜索树(3道)
剑指Offer 23. 二叉搜索树的后序遍历序列 (二叉搜索树): https://www.cnblogs.com/huangqiancun/p/9789968.html
剑指Offer 26. 二叉搜索树与双向链表 (二叉搜索树): https://www.cnblogs.com/huangqiancun/p/9790050.html
剑指Offer 62. 二叉搜索树的第k个结点 (二叉搜索树): https://www.cnblogs.com/huangqiancun/p/9809275.html
数组(11道)
剑指Offer 1. 二维数组中的查找 (数组): https://www.cnblogs.com/huangqiancun/p/9775118.html
剑指Offer 6. 旋转数组的最小数字 (数组): https://www.cnblogs.com/huangqiancun/p/9777569.html
剑指Offer 13. 调整数组顺序使奇数位于偶数前面 (数组): https://www.cnblogs.com/huangqiancun/p/9782564.html
剑指Offer 28. 数组中出现次数超过一半的数字 (数组): https://www.cnblogs.com/huangqiancun/p/9790076.html
剑指Offer 30. 连续子数组的最大和 (数组): https://www.cnblogs.com/huangqiancun/p/9790672.html
剑指Offer 32. 把数组排成最小的数 (数组): https://www.cnblogs.com/huangqiancun/p/9796739.html
剑指Offer 35. 数组中的逆序对 (数组): https://www.cnblogs.com/huangqiancun/p/9796785.html
剑指Offer 37. 数字在排序数组中出现的次数 (数组): https://www.cnblogs.com/huangqiancun/p/9797271.html
剑指Offer 40. 数组中只出现一次的数字 (数组): https://www.cnblogs.com/huangqiancun/p/9797284.html
剑指Offer 50. 数组中重复的数字 (数组): https://www.cnblogs.com/huangqiancun/p/9805081.html
剑指Offer 51. 构建乘积数组 (数组): https://www.cnblogs.com/huangqiancun/p/9805097.html
字符串(8道)
剑指Offer 2. 替换空格 (字符串): https://www.cnblogs.com/huangqiancun/p/9775425.html
剑指Offer 27. 字符串的排列 (字符串): https://www.cnblogs.com/huangqiancun/p/9790064.html
剑指Offer 34. 第一个只出现一次的字符 (字符串): https://www.cnblogs.com/huangqiancun/p/9796768.html
剑指Offer 43. 左旋转字符串 (字符串): https://www.cnblogs.com/huangqiancun/p/9797312.html
剑指Offer 44. 翻转单词顺序列 (字符串): https://www.cnblogs.com/huangqiancun/p/9797316.html
剑指Offer 49. 把字符串转换成整数 (字符串): https://www.cnblogs.com/huangqiancun/p/9805066.html
剑指Offer 52. 正则表达式匹配 (字符串): https://www.cnblogs.com/huangqiancun/p/9805124.html
剑指Offer 53. 表示数值的字符串 (字符串): https://www.cnblogs.com/huangqiancun/p/9805138.html
栈(3道)
剑指Offer 5. 用两个栈实现队列 (栈): https://www.cnblogs.com/huangqiancun/p/9775503.html
剑指Offer 20. 包含min函数的栈 (栈): https://www.cnblogs.com/huangqiancun/p/9784325.html
剑指Offer 21. 栈的压入、弹出序列 (栈): https://www.cnblogs.com/huangqiancun/p/9789942.html
递归(4道)
剑指Offer 7. 斐波那契数列 (递归): https://www.cnblogs.com/huangqiancun/p/9777581.html
剑指Offer 8. 跳台阶 (递归): https://www.cnblogs.com/huangqiancun/p/9777582.html
剑指Offer 9. 变态跳台阶 (递归): https://www.cnblogs.com/huangqiancun/p/9777588.html
剑指Offer 10. 矩形覆盖 (递归): https://www.cnblogs.com/huangqiancun/p/9777593.html
回溯(2道)
剑指Offer 65. 矩阵中的路径 (回溯): https://www.cnblogs.com/huangqiancun/p/9809322.html
剑指Offer 66. 机器人的运动范围 (回溯): https://www.cnblogs.com/huangqiancun/p/9809331.html
其他(15道)
剑指Offer 11. 二进制中1的个数 (其他): https://www.cnblogs.com/huangqiancun/p/9782553.html
剑指Offer 12. 数值的整数次方 (其他): https://www.cnblogs.com/huangqiancun/p/9782558.html
剑指Offer 19. 顺时针打印矩阵 (其他): https://www.cnblogs.com/huangqiancun/p/9784312.html
剑指Offer 29. 最小的K个数 (其他): https://www.cnblogs.com/huangqiancun/p/9790641.html
剑指Offer 31. 整数中1出现的次数(从1到n整数中1出现的次数) (其他): https://www.cnblogs.com/huangqiancun/p/9796710.html
剑指Offer 33. 丑数 (其他): https://www.cnblogs.com/huangqiancun/p/9796754.html
剑指Offer 41. 和为S的连续正数序列 (其他): https://www.cnblogs.com/huangqiancun/p/9797300.html
剑指Offer 42. 和为S的两个数字 (其他): https://www.cnblogs.com/huangqiancun/p/9797304.html
剑指Offer 45. 扑克牌顺子 (其他): https://www.cnblogs.com/huangqiancun/p/9797321.html
剑指Offer 46. 孩子们的游戏(圆圈中最后剩下的数) (其他): https://www.cnblogs.com/huangqiancun/p/9805026.html
剑指Offer 47. 求1+2+3+...+n (其他): https://www.cnblogs.com/huangqiancun/p/9805043.html
剑指Offer 48. 不用加减乘除做加法 (其他): https://www.cnblogs.com/huangqiancun/p/9805050.html
剑指Offer 54. 字符流中第一个不重复的字符 (其他): https://www.cnblogs.com/huangqiancun/p/9805155.html
剑指Offer 63. 数据流中的中位数(其他): https://www.cnblogs.com/huangqiancun/p/9809289.html
剑指Offer 64. 滑动窗口的最大值 (其他): https://www.cnblogs.com/huangqiancun/p/9809300.html
# -*- coding:utf-8 -*-
import requests
from bs4 import BeautifulSoup
if __name__ == '__main__':
result = []
for i in range(1,5)[::-1]:
target = 'https://www.cnblogs.com/huangqiancun/tag/%E5%89%91%E6%8C%87Offer/default.html?page='+str(i)
req = requests.get(url=target)
html = req.text
bf = BeautifulSoup(html,'html.parser')
for j in range(20)[::-1]:
index = "PostsList1_rpPosts_TitleUrl_"+str(j)
texts = bf.find_all('a', id=index)
if texts:
name = texts[0].string
address = texts[0].get('href')
result.append(name + ': '+ address)
res = []
res.extend([[' '],['链表(8道)']])
for i in range(len(result)):
if '(链表)' in result[i]:
res.append(result[i])
res.extend([[' '],['二叉树(12道)']])
for i in range(len(result)):
if '(二叉树)' in result[i]:
res.append(result[i])
res.extend([[' '],['二叉搜索树(3道)']])
for i in range(len(result)):
if '(二叉搜索树)' in result[i]:
res.append(result[i])
res.extend([[' '],['数组(11道)']])
for i in range(len(result)):
if '(数组)' in result[i]:
res.append(result[i])
res.extend([[' '],['字符串(8道)']])
for i in range(len(result)):
if '(字符串)' in result[i]:
res.append(result[i])
res.extend([[' '],['栈(3道)']])
for i in range(len(result)):
if '(栈)' in result[i]:
res.append(result[i])
res.extend([[' '],['递归(4道)']])
for i in range(len(result)):
if '(递归)' in result[i]:
res.append(result[i])
res.extend([[' '],['回溯(2道)']])
for i in range(len(result)):
if '(回溯)' in result[i]:
res.append(result[i])
res.extend([[' '],['其他(15道)']])
for i in range(len(result)):
if '(其他)' in result[i]:
res.append(result[i])
with open('剑指Offer.txt', 'a', encoding='utf-8') as f:
for i in range(len(res)):
f.writelines(res[i])
f.write('\n')
f.close()
剑指Offer (汇总)的更多相关文章
- 剑指Offer——京东实习笔试题汇总
剑指Offer--京东实习笔试题汇总 编程题1 题目的详细信息已经记不住,只能大致描述一下,就是求最有价值的的委托信息. n.s.B.S其中n代表委托信息,s要求的最有价值的委托信息的个数,B代表买入 ...
- 剑指Offer——毕业生求职网站汇总(干货)
剑指Offer--毕业生求职网站汇总(干货) 致2017即将毕业的你~ 精品网站 牛客网:https://www.nowcoder.com 赛码网:http://www.acmcoder.com/ 招 ...
- LeetCode题解汇总(包括剑指Offer和程序员面试金典,持续更新)
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) LeetCode题解分类汇总(包括剑指Offer和程序员面试金典) 剑指Offer 序号 题目 难度 03 数组中重复的数字 简单 0 ...
- LeetCode题解分类汇总(包括剑指Offer和程序员面试金典,持续更新)
LeetCode题解汇总(持续更新,并将逐步迁移到本博客列表中) 剑指Offer 数据结构 链表 序号 题目 难度 06 从尾到头打印链表 简单 18 删除链表的节点 简单 22 链表中倒数第k个节点 ...
- 剑指 Offer 题目汇总索引
剑指 Offer 总目录:(共50道大题) 1. 赋值运算符函数(或应说复制拷贝函数问题) 2. 实现 Singleton 模式 (C#) 3.二维数组中的查找 4.替换空格 ...
- 【剑指Offer学习】【全部面试题汇总】
剑指Offer学习 剑指Offer这本书已经学习完了.从中也学习到了不少的东西,如今做一个总的文件夹.供自已和大家一起參考.学如逆水行舟.不进则退.仅仅有不断地学习才干跟上时候.跟得上技术的潮流! 全 ...
- 【剑指Offer学习】【所有面试题汇总】
剑指Offer学习 剑指Offer这本书已经学习完了,从中也学习到了不少的东西,现在做一个总的目录,供自已和大家一起参考,学如逆水行舟,不进则退.只有不断地学习才能跟上时候,跟得上技术的潮流! 所有代 ...
- 剑指offer(第2版)刷题 Python版汇总
剑指offer面试题内容 第2章 面试需要的基础知识 面试题1:赋值运算符函数 面试题2:实现Singleton模式 解答 面试题3:数组中重复的数字 解答 面试题4:二维数组中的查找 解答 面试题 ...
- 【剑指Offer】剑指offer题目汇总
本文为<剑指Offer>刷题笔记的总结篇,花了两个多月的时间,将牛客网上<剑指Offer>的66道题刷了一遍,以博客的形式整理了一遍,这66道题属于相对基础的算法题目,对于 ...
随机推荐
- vim搜索及高亮取消
1. 命令模式下,输入:/字符串 比如搜索user, 输入/user 按下回车之后,可以看到vim已经把光标移动到该字符处和高亮了匹配的字符串 2. 查看下一个匹配,按下n(小写n) 3. 跳转到上一 ...
- C语言博客作业04——数组
1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量 1.2.1学习体会 这几周学习了数组,数组分为三大块:一维数组.二维数组和字符数组.数组相对于之前普通变量的好处就是可以储存数值,方便数据 ...
- ThinkPHP5.0源码学习之缓存Cache(一)
一.文件 1.缓存配置文件:thinkphp\convention.php 2.缓存文件:thinkphp\library\think\Cache.php 3.驱动目录:thinkphp\librar ...
- mac系统 安装pip,用python读写excel(xlrd、xlwt)安装
1: 先安装python, 下载地址:https://www.python.org/downloads/release/python-372/ 2: 安装pip 下载一个get-pip.py的文件 ...
- 下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y),y++);
下面程序的输出结果是____ A:11,10 B:11,11 C:10,10 D:10,11 int x=10; int y=x++; printf("%d,%d",(x++,y) ...
- [LeetCode] 83. Remove Duplicates from Sorted List ☆(从有序链表中删除重复项)
描述 Given a sorted linked list, delete all duplicates such that each element appear only once. Exampl ...
- 新建项目找不到android studio:appcompat v7:27.+包。
1.我们在build.gradle(project)中添加maven中的google库: allprojects { repositories { jcenter() maven { url &quo ...
- DBLookupCombobox实现下拉联动
这次用DBLookupCombobox实现省份-城市-地区的下拉联动,用以学习DBLookupCombobox的一些用法 效果图: 首先建立数据表(数据表形式可以多种多样:数据库表.文本.xml等,最 ...
- Android View的滑动
Android View的滑动 文章目录 Android View的滑动 一.实现移动 1.1 layout() 1.2 设置位置偏移量 1.3 改变布局参数 1.4 动画 1.5 ScrollTo以 ...
- flask基础---第三篇
flask中request的一些方法 首先from flask import request 1.request.path 2.request.host 3.request.host_url from ...