- 博客(18)
- 收藏
- 关注
原创 Algorithm笔记(2)
# ugp2_code#Problem 1def mergesort(alist): if len(alist) == 1: return alist mid = len(alist) // 2 left_alist = mergesort(alist[:mid]) right_alist = mergesort(alist[mid:]) i = 0 j = 0 result = [] # conbine wh...
2021-01-18 15:33:56
134
原创 《Computer Graphics》ReadingNotes (1)
Chpater 1Major ApplicationsThere are so many applications of computer graphics!! Video games, cartoons, visual effects, animated films, CAD/CAM, simulation, medical imaging and information visualization.Graphics APIThere are two graphics dominant parad
2021-01-14 22:28:05
149
原创 Algorithm笔记(1)
记录算法课的一些笔记和自己写的代码matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]a = 7def find(matrix, a): i = 0 j = 2 while j >= 0 and i <= 2: if matrix[i][j] == a: return i, j elif matrix[i][j] < a: i += 1
2021-01-11 00:29:47
190
原创 python3入门笔记(2)[字符串,列表,元组,函数]
字符串# 字符串 换行打印结果是print("""hellomybaby """)# 字符串的索引s = 'abc'print(s[1]) #bprint(s[-3]) #ass = 'abcdrf'# 字符串的切片print(ss[1:4]) #bcd 是[begin,end)区间print(ss[1:4:2]) # bd跨度为2# 字符串格式输出a = '小明'b = '小花'print(f'{a}对{b}说:"hello"') #打印结果是 小明对小花说
2021-01-07 21:46:22
96
原创 python3入门笔记(1)[if,else,elif,break,contine]
视频来源:https://www.bilibili.com/video/BV1BJ411p7Pv?p=7因为这学期的算法课是要用python3写,之前没接触过,所以提前预习下做一下笔记# 数字打印print("你好, 世界!")print("Hello, world!")print(1 + 3)print(3 * 7)print(21/7) # 3.0print(21//7) # 这一种就是打出来是整数 3age = 18# if语句if age > 16:
2021-01-07 16:19:20
226
原创 快速排序C++代码+图解
看了《啊哈!算法》后觉得图解很不错,附上图解图解C++代码#include <algorithm>#include <iostream>#include <list>#include <queue>#include <stack>#include <string>#include <unordered_map>#include <unordered_set>#include &l
2021-01-07 13:38:42
526
原创 Leetcode二叉树知识点1(深度遍历[前序,中序,后序]和广度遍历[层次])C++
二叉树的结点 struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode() : val(0), left(nullptr), right(nullptr) {} TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} TreeNode(int x, TreeNode *left, TreeNo
2021-01-06 15:06:34
91
原创 Leetcode刷题中的语言基础
#include <algorithm>#include <iostream>#include <list>#include <queue>#include <stack>#include <string>#include <unordered_map>#include <unordered_set>#include <vector>using namespace std;//刷.
2020-12-23 13:58:30
389
原创 Leetcode452. 用最少数量的箭引爆气球(C++)[中等] (贪心算法)
题目描述题目链接在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们想找到使得所有..
2020-12-19 21:31:11
401
1
原创 Unity Shader入门精要读书笔记(2) [Unity Shader的形式]
Unity Shader的基本结构Properties Subshader Tags RenderSetup Pass Tags RenderSetup CG Code Shader "Unlit/S_Unlit001"{ Properties //在材质面板上能够看到 { _Int("Int",Int) = 2 _FLoat("Float",Float) = 1.5 _Range("Range
2020-12-19 16:38:21
106
1
原创 Unity Shader入门精要读书笔记(1) [渲染流水线]
在此记录自己每日阅读笔记,详细内容查看《Unity Shader入门精要》的第一章渲染流程应用阶段(CPU) 几何阶段(GPU) 光栅化阶段(GPU) 1)数据加到显存中; 2)设置渲染状态; 3)调用drawCall 【顶点数据】 【顶点着色器】->【曲面细分着色器】->【几几何着色器】->【裁剪】->【屏幕映射】 【三角形设置】->【三角形遍历】->片元着色器->【逐片元操作】 ..
2020-12-18 21:59:58
145
1
原创 Leetcode15. 三数之和[中等] (双指针)
题目链接:https://leetcode-cn.com/problems/3sum/注意:1.本题主要是数组去重这一块比较困难,比如-1,-1,-1,2这种情况,当遇到第一个-1的时候,如果直接判断后一个也等于-1的时候,就把index++,此时为-1,-1,2,由于此时还是满足前一个等于后一个,所以继续++,最后就变成了-1,2,那么此时就无法满足a+b+c=0了,所以这样的算法是不对的2.正确的是第一次重复可以接受,但是第二次就不能接受。比如-1,-1,-1,2,第一次接受,所以找到了
2020-12-16 14:28:01
61
原创 Leetcode27. 移除元素 [简单] (双指针,快慢指针)
题目链接:https://leetcode-cn.com/problems/remove-element/给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并「原地」修改输入数组。(原地就是不开辟新的空间)元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 n
2020-12-16 13:54:34
136
原创 链表知识总结(增删查发,翻转)
C++中链表的定义:// 单链表struct ListNode { int val; // 节点上存储的元素 ListNode *next; // 指向下一个节点的指针 ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数};初始化节点:ListNode* head = new ListNode(5);...
2020-12-14 16:18:34
269
原创 Leetcode35.搜索插入位置(C++)[简单]「二分法」
题目链接:https://leetcode-cn.com/problems/search-insert-position/该题目是二分法,所以先要对二分法有所了解,这篇文章很清晰讲解了二分法师什么,以及二分法的两种写法。原文章链接:https://mp.weixin.qq.com/s?__biz=MzUxNjY5NTYxNA==&mid=2247483958&idx=1&sn=e1424768a5e6bc6b418f9662ad42fe71&source=41#wec
2020-12-11 11:33:25
117
原创 冒泡排序以及2种优化
看了这个视频后的总结视频链接:https://www.bilibili.com/video/BV1gf4y1B7Ev冒泡排序比较相邻元素,大的元素后置。每次循环都能找到最大的位置。时间复杂度:最好O(N),也就是排好序的数,且有一个标记的情况下,所以只需要对比相邻元素,但是没有标记的话还是O(N^2);最坏是倒序的时候空间负责度:O(1),稳定的改进办法1:引入一个标志位改进办法2:在最后一次交换的时候,那个位置之后的元素已经有序,所以把最后一次的位置记录下来三种代码如下:
2020-12-10 16:22:09
102
原创 Leetcode724. 寻找数组的中心索引(C++) [简单]
题目描述给定一个整数类型的数组nums,请编写一个能够返回数组 “中心索引” 的方法。我们是这样定义数组 中心索引 的:数组中心索引的左侧所有元素相加的和等于右侧所有元素相加的和。如果数组不存在中心索引,那么我们应该返回 -1。如果数组有多个中心索引,那么我们应该返回最靠近左边的那一个题目链接:https://leetcode-cn.com/problems/find-pivot-index注意:第二次循环的时候i是可以从0到nums.length()-1的,这两种情况下只要满足left.
2020-12-10 00:00:34
154
原创 Leetcode3. 无重复字符的最长子串(C++)[中等]
题目描述给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。题目链接:https://leetcode-cn.com/leetbook/read/2021-spring-recruitment/5j6hph/需要注意的几点:该题使用了滑动窗口思想,可以用hashmap判断某元素是否存在在集合中,从而加速左边指针的移动步伐 集合的元素是[left,right),所以每一次的right位置的元素相当于是新的元素,需要判断它是否在几个中已经存在 hashmap.find()函数在元..
2020-12-09 23:25:43
108
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人