自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 6.s081 lab3

其中要注意的地方就是判断是否是最底层,如果是最底层,就不进行递归了。然后在相应地方定义并在exec.c中按要求添加代码即可。主要参考vm.c中的freewalk,第一个实验:打印页表。

2023-12-25 16:06:32 434

原创 二叉树遍历

具体就是每次循环先找到左子树中的最右节点,根据其右孩子为nullptr或者p,判断是否已经连接,如果是前序遍历,未连接时直接进行访问,并让p向左走,pre连接p,如果是中序遍历,已连接时(代表左边已经访问过)直接进行访问,并重置pre,p向右走。如果没访问过,当前节点入栈,向右边走。非递归算法看起来其实都差不多,都是利用栈,先找到最左边的节点,把路上的节点不断保存(放入栈内),到了叶子节点就出栈,然后往右边走一步。后序遍历因为是左、右、中的顺序,可以倒过来中、右、左,把前序遍历修改最后再翻转答案即可。

2023-06-27 15:32:38 156

原创 最近的学习

最近学习

2023-02-22 16:20:12 140

原创 76. 最小覆盖子串【leetcode】

leetcode

2022-08-24 16:49:32 148

原创 74. 搜索二维矩阵【leetcode】

leetcode

2022-08-24 14:33:56 99

原创 72. 编辑距离【leetcode】

leetcode

2022-08-24 14:00:42 939

原创 69. x 的平方根 【leetcode】

leetcode

2022-08-24 09:22:51 91

原创 67. 二进制求和【leetcode】

leetcode

2022-08-22 16:42:03 83

原创 65. 有效数字【leetcode】

leetcode

2022-08-22 15:42:35 79

原创 63. 不同路径 II 64. 最小路径和【leetcode】

leetcode

2022-08-19 16:58:04 297

原创 60. 排列序列【leetcode】

leetcode

2022-08-18 17:02:22 74

原创 56. 合并区间【leetcode】

leetcode

2022-08-17 10:56:11 123

原创 55. 跳跃游戏【leetcode】45. 跳跃游戏 II【leetcode】

leetcode

2022-08-16 17:28:01 1759

原创 53. 最大子数组和【leetcode】

leetcode

2022-08-16 15:32:38 96

原创 51. N 皇后【leetcode】

leetcode

2022-08-16 14:42:42 150

原创 50. Pow(x, n)【leetcode】

leetcode

2022-08-15 16:25:04 97

原创 48. 旋转图像【leetcode】

leetcode

2022-08-15 11:30:21 1354 2

原创 java 观察者模式

定义:在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。相当于微信订阅,你订阅了公众号,在它更新时就会自动给你发送消息。没有订阅它就不会给你发送消息。图片转自https://blog.csdn.net/wanggang514260663/article/details/86138144角色:主要有四个角色:抽象被观察者角色:也就是一个抽象主题,它把所有对观察者对象的引用保存在一个集合中,每个主题都可以有任意数量的观察者。抽象主题提.

2020-08-10 05:53:01 110

原创 简单工厂模式 C++

#include <iostream>using namespace std;class Product{public: virtual void Show() = 0;};class ProductA: public Product{public: void Show() { cout << "A" <&...

2020-04-07 22:49:31 142

原创 42. 接雨水【leetcode】

原题地址:https://leetcode-cn.com/problems/trapping-rain-water/利用栈,栈保存位置。class Solution {public: int trap(vector<int>& height) { int ret = 0, i = 0; stack<int> st;...

2020-04-03 16:00:38 134

原创 一些关于C++、windows编程的学习

1、extern "C":因为C++和C对编译后的函数符号和外部变量符号修饰方式不一样。加上这个,使其修饰的变量或函数是按照C语言方式编译,连接器才能正确解析。在DL显式链接中,被修饰的函数就要加上这个,不然在调用的时候,函数名就要写成经C++编译器修饰过后的函数名。而不同C++编译器修饰方法也可能不同,所以还是加上这个比较方便。2、...

2020-03-26 18:46:02 152

原创 win32 剪贴板

wstring wsCopy = _T("");if (m_pUser->IsVisible()){ wsCopy = m_pUser->GetText();}else{ wsCopy = m_prUser->GetText();}int ret = ::OpenClipboard(m_hWnd);if (ret != 0){ int...

2020-03-26 10:41:08 201

原创 41. 缺失的第一个正数【leetcode】

原题地址:https://leetcode-cn.com/problems/first-missing-positive/题目上有要求是算法时间复杂度为O(n),并且只能使用常数级别的空间。核心思想就是利用原数组记录出现过的值。1、遍历数组,把数组中≤0或者>len的数都变为1,并且判断数组中是否已经存在1,不存在1那答案就直接为1。这时候数组就全为正数了,可以用负数标志一个数是否出现...

2020-03-19 12:50:34 115

原创 C++ 构造函数和析构函数是否可以为虚函数?构造函数里调用虚函数会怎样?

构造函数:在类中,构造函数不可以为虚函数。这是为什么呢?这要先了解一下vptr指针。什么是vptr指针呢?当类中声明虚函数时,编译器会在类中生成一个虚函数表。虚函数表是一个存储成员函数指针的数据结构,它是由编译器自动生成与维护的,virtual成员函数会被编译器放入虚函数表中。所以,当存在虚函数时,每个对象都需要有一个指向虚函数表的指针,这就是vptr指针。在实现多态的过程中,...

2020-03-18 22:09:04 374

原创 windows 线程池

线程池异步方式调用函数两种方法:1、不创建工作项的方式2、创建工作项的方式

2020-03-17 19:37:29 307

原创 DLL的导出与使用 C++

DLL中导出函数的声明1、在函数声明中加上__declspec(dllexport)在需要导出的函数之前加__declspec(dllexport)即可。#include <iostream>using namespace std;__declspec(dllexport) int add(int a, int b){ return a + b;}__dec...

2020-03-15 17:25:51 476

原创 37. 解数独【leetcode】

原题地址:https://leetcode-cn.com/problems/sudoku-solver/dfs回溯法。不断用1到9尝试未填入的地方。假如有某处无法填入,就把此处重新变为'.'(未填入状态),并且回溯。在使用递归时要仔细,注意递归中参数的变化。class Solution {public: void solveSudoku(vector<vector...

2020-03-10 19:26:57 67

原创 C++ 线程同步

1、临界区用CRITICAL_SECTION结构对象保护共享资源。用EnterCriticalSection()和LeaveCriticalSection()函数去标识和释放一个临界区。所用到的CRITICAL_SECTION结构对象必须经过InitializeCriticalSection()的初始化后才能使用。如果有多个线程试图同时访问临界区,那么在有一个线程进入后其他所有试图...

2020-03-05 16:31:23 173

原创 用playground做Unity3d的一个2d小游戏的一些问题和学习

1、player在Y轴0以上无法显示,调整visiblity options属性.visiblity options中:sorting layer是自定义的标识符,哪个sortinglayer在前(在layer & tags中设置的先后顺序)哪个先渲染。sorting layer相同时order in layer的数值越小越先渲染。也就是说数值小的会在下层,大的在上层。2、Po...

2020-02-26 18:12:43 329

原创 windows编程 postmessage,postthreadmessage,sendmessage的区别

同一线程:postmessage:把消息放入线程的消息队列,通过消息循环分发到目标窗口。sendmessage:系统直接调用指定窗口的窗口过程。不同线程:postmessage:根据窗口句柄把消息放入指定窗口的所在线程的消息队列。也就是说,会接下去执行现在的线程,等窗口所在线程获得控制权,再通过消息循环分发到目标窗口。postthreadmessage:跟postmessage...

2020-02-23 14:49:02 704

原创 c++ async

thread:头文件:#inlcude <thread>async

2020-02-21 17:27:45 631

原创 36. 有效的数独【leetcode】

原题链接:https://leetcode-cn.com/problems/valid-sudoku/一开始想的办法就是利用map保存数据,遍历整个数组三次。看了一些题解可以使用位运算。用三个数组保存横、竖、九宫格内的情况。例如x[i]就代表第i行的情况。维护x[i]内保存的数据。用&判断在同一行是否出现过,用|更新数据。一开始为0,可以看成000000000,在...

2020-02-15 18:25:14 78

原创 32. 最长有效括号【leetcode】

原题地址:https://leetcode-cn.com/problems/longest-valid-parentheses/给定一个只包含'('和')'的字符串,找出最长的包含有效括号的子串的长度。示例1:输入: "(()"输出: 2解释: 最长有效括号子串为 "()"示例 2:输入: ")()())"输出: 4解释: 最长有效括号子串为 "()()"...

2020-02-13 11:36:42 133

原创 30. 串联所有单词的子串【leetcode】

好久没刷题了。今天再刷题记录下。

2020-02-12 17:23:58 111

原创 看一篇关于单例模式文章之后的学习

单例模式:整个程序有且只有一个实例,该类自己负责创建自己的对象,并且保证只有一个实例。单例模式可以分为饿汉式和懒汉式:饿汉式:类加载时就进行实例化,启动较慢,但是线程安全。class Singleton //饿汉式{private: static Singleton *Instance; Singleton(){}; Singleton(const Singleton&...

2020-02-11 17:45:27 122

原创 KMP

KMP算法看了好多次,看一次忘一次,而且以前也没有深究一些东西。这次记录一下。先是求next数组,即最长相同前后缀长度。例如abcab,ab就是最长相同前后缀。。用双指针法,j在后,k在前。next[j]代表的是j之前(不包括needle[j])的最长相同前后缀长度-1(-1是为了便于跳转)求的时候主要有几种情况:needle[j] == needle[k]:相等的话nee...

2020-02-02 15:18:48 140

原创 25. K 个一组翻转链表[leetcode]

示例 :给定这个链表:1->2->3->4->5当k= 2 时,应当返回: 2->1->4->3->5当k= 3 时,应当返回: 3->2->1->4->5指针赋值不要连续赋值。思路就是先得到链表长度,再K个一组进行逆置,组与组之间的连接需要考虑用prev指针保存上一组最后一个结点。clas...

2020-02-01 11:42:48 72

原创 web前端

h1~h6标签:标题标签,h1标签在一个页面只能出现一次,可以提供搜索引擎优化p标签:段落标签,上下换行分段a标签:超链接<a href="">超链接</a> <!------点击会进行刷新-------><a href="javascript: void(0)">超链接</a> <!------不进行任何操作---...

2020-01-31 16:32:22 101

原创 git连接github使用

1、创建SSH KEY$ ssh-keygen -t rsa -C "xxxx@xxx"然后会在用户目录/。ssh里找到一个.pub的文件,复制内容到github上的设置内创建SSH KEY2、设置用户名邮箱这些信息,$ git config --global user.name "xxx"$ git config --global user.email "xxx@xx"...

2020-01-04 23:38:42 239

原创 2的次幂表示 蓝桥杯

开始那个+的位置总是弄不对,,最后总算想到用二进制最低位控制“+”#include &lt;iostream&gt;using namespace std;int g(int k) //输出最低位1{ for (int i=0;i&lt;=30;i++) { if (1&lt;&lt;i&amp;k) { return i; break; } } } i...

2018-03-19 21:52:48 268

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除