Felix Zhang

Fighting for the great dreams!!!

排序算法

算法导论专题:排序方法一:插入排序方法二:归并排序1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253#include <iostream>#include <vector>using namespace std;#define......

前缀和算法

前缀和算法前缀和,取余,用hash表维护次数,方便统计; 题目描述560560. 和为K的子数组 给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。 示例 1 : 12输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。 说明 : 数组的长度为 [1, 20,000]。 数组中元素......

计算机系统漫游

...

字符串相乘

字符串相乘(竖式模拟)给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = “2”, num2 = “3”输出: “6”示例 2: 输入: num1 = “123”, num2 = “456”输出: “56088” 1234num1 和 num2 的长度小于110。num1 和 nu......

Hierholzer算法

Hierholzer算法的应用Hierholzer算法的基本过程1234(1) 选择任一顶点为起点,遍历所有相邻边。(2) 深度搜索,访问相邻顶点。将经过的边都删除。(3) 如果当前顶点没有相邻边,则将顶点入栈。(4) 栈中的顶点倒序输出,就是从起点出发的欧拉回路。 性质一:如果该图为欧拉图,则栈底的必定为起点。如果该图为半欧拉图,则栈底部存储的是与起点不同的另外一个奇度数顶点。 性质二:如......

力扣刷题日记

双指针(1)三数之和问题(15,16)、四数之和问题(18)解决思路:选定起点,使用排序+双指针的做法 解决难点:怎么排除重复项目:直接进入下一循环,如果值与上一个相等,则直接跳过,对于四个元素都是如此 扩展问题:四数之和(18):在三数之和上加一个循环 (2)删除链表倒数第N个节点(19)解决思路:使用双指针,一个置于第N(label = n - 1)个节点,另一个置于第1(label =......

数据结构与算法分析学习笔记

(1)选择排序$\Theta(n^2)$(2)归并排序$\Theta(n\lg n)$(3)求解递归复杂度:特征方程、主定理第四章:分治策略求解方法:代入法、递归树法、主定理 4.1 最大子数组问题:寻找数组A的连续和最大的子数组原始问题:最大化股票收益 将原始问题依照中间点分为两段,最大子数组一定属于三种情况之一:完全左侧、完全右侧、跨越中心; 1234567891011121314151......

C++学习笔记

强制类型转换 1(type_name) expression; ...

python玩转数据

MODULE 0走进pythonhello world 12mystring = 'hello world'print(mystring) 运行程序:(1)交互式解释器shell(2)文件(以.py为扩展名) 安装第三方库: pip install (库名) 输出:利用Print函数 参数为变量名or字符串 输入:Input函数 变量名 = 变量类型( input(‘提示语句’)) pyt......

Leetcode_daily_practice(C++)

717.1比特和2比特字符有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。 现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。 示例 1: 12345输入: bits = [1, 0, 0]输出: True解释: 唯一的编码方式是一个两比特字符和一个一比特字符。所以最后一个字符是一比特字......