自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(105)
  • 资源 (1)
  • 收藏
  • 关注

原创 【重学c++primer】第五章第二节 深入浅出:左值和右值

【重学c++primer】第五章第二节 深入浅出:左值和右值

2024-08-18 16:57:25 932

原创 【重学c++primer】第四章第三节 深入浅出:从数组到指针

上述的第二个例子企图使用数组会隐式转换成指针来完成数组的声明,这样在source.cpp文件中,即使更改了数组的下标,在main.cpp中也不需要更改,可以小偷懒。然后,由于在main.cpp文件里,a被视为一个指针,在64位操作系统下,指针占8个字节,因此读取出来的数组为:01 00 00 00 02 00 00 00。比如上面的例子, a的类型是int[3], 但是b的类型是int*, 其中丢失的信息就是3, 3的含义就是元素的个数为3。

2024-08-18 14:14:39 1024

原创 【剑指offer】骰子的点数

将一个骰子投掷 n次,获得的总点数为 s,s 的可能范围为 n∼6n掷出某一点数,可能有多种掷法,例如投掷 2 次,掷出 3点,共有 [1,2],[2,1]两种掷法。请求出投掷 n次,掷出 n∼6n点分别有多少种掷法。数据范围:1≤n≤10样例1输入:n=1输出:[1, 1, 1, 1, 1, 1]解释:投掷1次,可能出现的点数为1-6,共计6种。每种点数都只有1种掷法。所以输出[1, 1, 1, 1, 1, 1]。样例2输入:n=2。

2024-08-03 14:39:30 195

原创 剑指offer题解合集——Week7day1[滑动窗口的最大值]

给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值。例如,如果输入数组 [2,3,4,2,6,2,5,1]及滑动窗口的大小 3,那么一共存在 6个滑动窗口,它们的最大值分别为 [4,4,6,6,6,5]注意:数据保证 k大于 0,且 k小于等于数组长度。数据范围数组长度 [1,1000]样例输入:[2, 3, 4, 2, 6, 2, 5, 1] , k=3输出: [4, 4, 6, 6, 6, 5]

2024-08-01 22:49:32 486 1

原创 【组件协作】 观察者模式

观察者模式是一种组件间协作的设置模式, 用于一对多的通知机制目标发送通知的时候, 无需指定观察者,通知(可以携带通知信息作为参数)会自动传播(调用DoProgress函数)观察者自己确定是否需要订阅通知(订阅通知就是上面的add),目标对象对此一无所知观察者模式常常用于基于事件的UI框架中, 也是MVC模式的一个重要组成成分特别的, 调用DoProgress函数并不是通知观察者, 而是执行通知机制, 只是说执行结果为:通知所有的观察者。

2024-07-31 20:37:55 293

原创 【组件协作】策略模式

策略模式仍然是一个组件协作的设计模式, 和模板方法模式有异曲同工之妙。

2024-07-26 23:35:20 264

原创 【组件协作】模板方法

定义一个操作中的算法的骨架(稳定, 上面demo的Run方法), 而将一些步骤延迟(变化)到子类中。Template Method使得子类可以不改变(复用)一个算法的结构即可实现重定义(override重写)该算法的某些步骤那么回过头来思考一下, 为什么要把程序的主体流程放在lib库里完成?答案呼之欲出, 因为要稳定但是这样也有弊端:用方法一:业务开发人员不得不完成主流程, 其业务水平会得到很大的提升, 因为你不完成, 整个Application就无法实现。

2024-07-25 22:45:16 488

原创 面向对象设计原则

Shape的抽象, 并没有依赖Line和Rect的细节, 仅有一个Draw接口, 如果此时Shape依赖于Line。Line和Rect属于底层, 是变化的, 而此时MainForm依赖了低层, 违反了DIP原则。Shape是抽象, 是稳定的, 而Line和Rect是细节, 是变化的, 符合DIP原则。如果你的子类不能替代基类, 那你可能需要组合关系, 而不是继承。修改的代价: 修改源代码, 重新编译, 重新测试。动物和生物, 动物继承自生物, 人类继承自动物。汽车继承自交通工具, 摩托车继承自汽车。

2024-07-24 23:19:48 243

原创 【设计模式】总述

说法:“每一个模式描述了在我们周围不断重复发生的问题以及该问题的解决方案的核心”推荐书籍:《设计模式:可复用面向对象软件的基础》《面向对象分析和设计》目标:可复用手法:面向对象当然架构领域也有设计模式,比如:MVC、MVP、MVVM数据库领域也有自己的设计模式但是本设计模式主要是面向对象设计模式需要把握面向对象带来的抽象意义 理解如何利用这些机制来表达现实世界软件设计复杂的根本原因: 变化对于分解:分而治之。

2024-07-23 23:34:30 942

原创 力扣279完全平方数

【代码】力扣279完全平方数。

2024-03-25 21:42:24 258

原创 力扣518零钱兑换

一些硬币出来组成amount面额的金钱=>经典的动态规划问题。由此可以看出是:有选择的组合问题=>背包问题。又因为是无限个数=>完全背包问题。

2024-03-25 19:55:07 239

原创 力扣1049最后一块石头的重量

【代码】力扣1049最后一块石头的重量。

2024-03-23 21:00:18 148

原创 力扣131分隔回文串

给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是。输出:[[“a”,“a”,“b”],[“aa”,“b”]]原先每个元素都要判断一遍是或者不是,需要O(n^2)那么要使得f[i][j]是回文要有两个条件。其实就是预处理了u ~ i是否是回文串。f[i][j]:表示i ~ j都是回文。返回 s 所有可能的分割方案。输入:s = “aab”输入:s = “a”输出:[[“a”]]

2024-03-15 21:08:59 247 1

原创 力扣654 最大二叉树

给定一个不重复的整数数组 nums。输出:[6,3,5,null,2,0,null,null,1]递归地在最大值 左边 的 子数组前缀上 构建左子树。递归地在最大值 右边 的 子数组后缀上 构建右子树。创建一个根节点,其值为 nums 中的最大值。输入:nums = [3,2,1,6,0,5]返回 nums 构建的 最大二叉树。拜完亲戚以后,你加入族谱。我比你大,你做我右儿子。我比你小,我做你左儿子。

2024-03-14 21:24:22 311

原创 【力扣347前k个高频元素】

给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。输入: nums = [1,1,1,2,2,3], k = 2。输入: nums = [1], k = 1。

2024-03-12 21:31:14 210

原创 剑指offer题解合集——Week4day2

剑指offer题解合集——Week4day2

2024-01-15 21:02:00 459

原创 剑指offer题解合集——Week4day1

剑指offer题解合集——Week4day1

2024-01-15 20:40:14 409

原创 剑指offer题解合集——Week3day7

剑指offer题解合集——Week3day7

2024-01-14 22:47:32 592

原创 剑指offer题解合集——Week3day6

剑指offer题解合集——Week3day6

2024-01-14 22:26:33 502

原创 剑指offer题解合集——Week3day5

剑指offer题解合集——Week3day5

2024-01-13 21:19:46 425

原创 剑指offer题解合集——Week3day4

剑指offer题解合集——Week3day4

2024-01-12 23:37:16 423

原创 剑指offer题解合集——Week3day3

剑指offer题解合集——Week3day3

2024-01-06 21:11:59 405

原创 剑指offer题解合集——Week3day2

剑指offer题解合集——Week3day2

2024-01-06 21:03:02 380

原创 剑指offer题解合集——Week3day1

剑指offer题解合集——Week3day1

2024-01-06 20:58:23 432

原创 剑指offer题解合集——Week2day7

剑指offer题解合集——Week2day7

2024-01-01 21:41:55 356

原创 剑指offer题解合集——Week2day6

剑指offer题解合集——Week2day6

2023-12-31 21:29:23 502

原创 剑指offer题解合集——Week2day5

剑指offer题解合集——Week2day5

2023-12-31 20:15:26 715

原创 剑指offer题解合集——Week2day4

剑指offer题解合集——Week2day4

2023-12-31 14:27:55 403

原创 剑指offer题解合集——Week2day3

剑指offer题解合集——Week2day3

2023-12-27 21:13:37 389

原创 剑指offer题解合集——Week2day2

剑指offer题解合集——Week2day2

2023-12-27 20:44:22 518

原创 剑指offer题解合集——Week2day1

剑指offer题解合集——Week2day1

2023-12-27 20:21:10 377

原创 剑指offer题解合集——Week1day7

分为两组,3, 4, 5和1, 2。

2023-12-23 21:10:52 1149

原创 剑指offer题解合集——Week1day6

剑指offer题解合集——Week1day6

2023-12-23 20:00:47 387

原创 剑指offer题解合集——Week1day5

由于中序遍历中,左子树区间为[il, k - 1]这里需要利用性质左右子树区间长度相等得出区间边界。则前序遍历中,右子树的左端点显然为这个x + 1。前序遍历是:[3, 9, 20, 15, 7]中序遍历是:[9, 3, 15, 20, 7]则可以解出x = k - il + pl。前序遍历[pl + 1, 待定]以上有两个待定的端点,也是难点。记前序遍历区间的右端点为x。

2023-12-21 00:05:55 671

原创 剑指offer题解合集——Week1day4

剑指offer题解合集——Week1day4

2023-12-19 21:48:57 349

原创 剑指offer题解合集——Week1day3

剑指offer题解合集——Week1day3

2023-12-19 20:48:45 532

原创 剑指offer题解合集——Week1day2

剑指offer

2023-12-19 20:24:59 428

原创 剑指offer题解合集——Week1day1

剑指offer题解

2023-12-19 19:51:37 368

原创 现代c++急急急——functional、bind、lambda

现代c++急急急——functional、bind、lambda

2023-07-02 13:08:27 373

原创 【重学c++primer】第二章 深入浅出:变量的类型

char是否有符号:影响可移植性整数在内存中的保存方式:大端和小端,影响可移植性每种类型的大小:影响可移植性特别的,unsigned和unsigned int是等价的,因为int太常用了。

2023-04-27 17:02:40 811 2

dosbox汇编语言相关插件(免费)

link masm dubug

2022-04-11

空空如也

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

TA关注的人

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