自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学习笔记——C++设计模式之抽象工厂模式

C++设计模式之抽象工厂模式 _学习GeekBand李建忠老师课程记录 1.动机: 1.在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时,由于需求的变化,往往存在更多系列对象的创建工作。 如Sql的Connection Command Reader与 Oracle的 Connection Command Reader的一系列同类型的 相关联性的创建工作。 2.如何应对这种变化?如何绕过常规的对象创建方法(new),提供一种“封装机制”来避免客户程序和这种“多系列具体对象创建工作”的紧耦

2020-08-24 15:54:16 187

原创 C++强制类型转换运算符|类型转换

强制类型转换运算符 1. const_cast 用于删除 const、volatile 和 __unaligned 特性(如将 const int 类型转换为 int 类型 ) #include <iostream> using namespace std; class CCTest { private: int m_number; public: void Number(int num) { m_number = num; } void prin

2020-08-23 15:00:20 302

原创 学习笔记——C++设计模式之单例模式

C++设计模式之单例模式 _学习B站李建忠老师课程记录 动机: 1.再软件系统中,经常有这样一些特殊的类。必须保证他们在系统中只存在一个实例,才能确保他们的正确逻辑正确性、以及良好的效率。 2.如何绕过常规的的构造器,提供一种机制来保证一个类只有一个实例? 3.这应该是类设计者的责任,而不是使用者的责任。 模式定义: 保证一个类仅有一个实例,并且提供一个该实例的全局访问点。-GoF 代码 1. 线程非安全的版本以及安全版本 class Singleton{ private://不设置则默认公有 自动设置

2020-08-22 19:01:08 164

原创 学习笔记——C++设计模式之策略模式

C++设计模式之策略模式 _学习B站李建忠老师课程记录 动机: 1.在软件构建过程中,某些对象使用的算法可能多种多样,经常改变,如果将这些算法都编码到对象中,将会使得对象变得异常复杂;而且有时候支持不使用的算法也是一种性能负担。 2.如何在运行时根据需要透明地更改对象的算法? 将本算法与对象本身解耦合,从而避免上述问题? 模式定义: 定义一系列算法,把它们一个个封装起来,并且使它们可以互相替换(变化),该模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展,子类化)。-GoF 重构前代码 税率计算举例:

2020-08-22 17:41:02 111

原创 M*N的二维数组顺时针旋转90°

M*N的二维数组顺时针旋转90° #include <iostream> #include<vector> using namespace std; vector<vector<int>> nums = { {1,2,3},{4,5,6} }; vector<vector<int>>res(3, vector<int>(2, 0)); void Rotate(vector<vector<int>>&

2020-08-21 01:04:14 610

原创 HUAWEI坐标移动

坐标移动 开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。 输入: 合法坐标为A(或者D或者W或者S) + 数字(两位以内) 坐标之间以;分隔。 非法坐标点需要进行丢弃。如AA10; A1A; %; YAD; 等。 下面是一个简单的例子 如: A10;S20;W10;D30;X;A1A;B10A11;;A10; 处理过程: 起点(0,0) A10 = (-10,0)

2020-08-19 15:55:00 96

原创 0-1背包问题 knapsack

0-1背包问题 knapsack 对于0-1背包问题,状态方程为 其中dp[i][v]为前i个物品恰好放入一个容量为v的背包可以获得最大价值。 dp[i][v]=max(dp[i-1][v],dp[i-1][v-weights[i]]+value[i]); #include <bits/stdc++.h> using namespace std; int main() { int N, V;//N为物品个数 V为背包的容量 cin >> N >> V;

2020-08-19 14:56:23 143

原创 购物单 HUAWEI机试记录

购物单 华为机试test 王强今天很开心,公司发给N元的年终奖。王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子: 主件 附件 电脑 打印机,扫描仪 书柜 图书 书桌 台灯,文具 工作椅 无 如果要买归类为附件的物品,必须先买该附件所属的主件。每个主件可以有 0 个、 1 个或 2 个附件。附件不再有从属于自己的附件。王强想买的东西很多,为了不超出预算,他把每件物品规定了一个重要度,分为 5 等:用整数 1 ~ 5 表示,第

2020-08-19 14:52:17 74

空空如也

空空如也

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

TA关注的人

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