自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode算法题——滑动窗口

438. 找到字符串中所有字母异位词给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。异位词 指由相同字母重排列形成的字符串(包括相同的字符串)。示例 1:输入: s = "cbaebabacd", p = "abc"输出: [0,6]解释:起始索引等于 0 的子串是 "cba", 它是 "abc" 的异位词。起始索引等于 6 的子串是 "bac", 它是 "abc" 的异位词。示例 2:输入: s = "abab",

2021-10-12 22:39:05 111

原创 leetcode算法题——双指针

82. 删除排序链表中的重复元素 II存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除链表中所有存在数字重复情况的节点,只保留原始链表中 没有重复出现 的数字。返回同样按升序排列的结果链表。示例 1:输入:head = [1,2,3,3,4,4,5]输出:[1,2,5]示例 2:输入:head = [1,1,1,2,3]输出:[2,3]代码/** * Definition for singly-linked list. * struct ListNode {

2021-10-12 22:31:03 121

原创 leetcode算法题——二分查找

34.在排序数组中查找元素的第一个和最后一个位置给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例 2:输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,-1]示例 3输入:nums = [], target = 0输出:

2021-10-12 22:11:17 129

原创 《大话设计模式》——建造者模式(生成器模式)

1.画人1.1.定义一个抽象的建造人的类abstract class PersonBuilder{ protected Graphics g; protected Pen p; public PersonBuilder(Graphics g,Pen p){ this.g=g; this.p=p; } public abstract void BuildHead(); public abstract void BuildBody(); public abstract void B

2021-10-11 22:42:08 69

原创 《大话设计模式》——外观模式

1.1.外观模式结构图1.2.外观模式一般化代码四个子系统的类class SubSystemOne{ public void MethodOne(){ Console.WriteLine(""); }}class SubSystemTwo{ public void MethodTwo(){ Console.WriteLine(""); }}class SubSystemThree{ public void MethodThree(){ Console.WriteLin

2021-10-11 21:28:44 71

原创 《大话设计模式》——模板方式模式

当我们要完成某一细节层次一致的一个过程或一系列步骤,但其个别步骤在更详细的层次上的实现可能不同时,我们通常考虑用模板方法模式来处理。1.金庸小说考题试卷1.1.试卷父类class TestPaper{ public void TestQuestion1(){ Console.WriteLine("题目1"); Console.WriteLine("答案:"+Answer1()); } public void TestQuestion2(){ Console.WriteLine("题目

2021-10-06 16:48:13 108

原创 《大话设计模式》——原型模式

1.原型模式结构图2.一般化代码2.1.原型类abstract class Prototype{ private string id; public Prototype(string id){ this.id=id; } public string Id{ get(return id;} } public abstract Prototype Clone();}2.2.具体原型类class ConcretePrototype1:Prototype{ public

2021-10-06 15:58:51 103

原创 《大话设计模式》——工厂方法模式

1.简单工厂模式结构图2.工厂方法模式结构图2.1.先构建一个工厂接口interface IFactory{ Operation CreateOperation();}2.2.加减乘除各建一个具体工厂实现接口class AddFactory:IFactory{ public Operation CreateOperation(){ return new OperationAdd(); }}class SubFactory:IFactory{ public Operation

2021-10-05 23:28:46 53

原创 《大话设计模式》——代理模式

1.为他人做嫁衣1.1.结构图1.2.代理接口interface GiveGift{ void GiveDolls(); void GiveFlowers(); void GiveChocolate();}1.3.追求者类class Pursuit:GiveGift{ SchoolGirl mm; public Puersuit(SchoolGirl mm){ this.mm=mm; } public void GiveDolls(){ Console.WriteLin

2021-10-05 18:23:33 61

原创 《大话设计模式》——装饰模式

1.一般代码结构(摘自书中插图)1.1.Component类abstract class Component{ public abstract void Operation();}1.2.ConcreteComponent类class ConcreteComponent:Component{ public override void Operation(){ Console.WriteLine("具体对象的操作"); }}1.3.Decorator类abstract cla

2021-10-05 16:40:22 61

原创 《大话设计模式》——策略模式

1.简单工厂实现1.1.现金收费抽象类抽象基类提供函数接口,不需要提供函数实现,此处区别于虚函数。abstract class CashSuper{ public abstract double acceptCash(double money);}1.2.正常收费子类class CashNormal:CashSuper{ public double acceptCash(double money){ return money; }}1.3.打折收费子类class CashRe

2021-10-05 11:04:34 62

原创 《大话设计模式》——简单工厂模式

Operation运算类public class Operation{ private double _numberA=0; private double _bumberB=0; public double NumberA{ get {return _}}}

2021-10-04 20:26:26 85

原创 用递归算法求数组最大值

#include<stdio.h>int amax(int a[], int n);int main() { int a[10] = { 3,5,10,6,8,7,1,2,4,9 },i,max; max = amax(a, 10); for (i = 0; i < 10; i++) { printf("%4d", a[i]); } printf("\nmax=...

2019-11-27 13:01:54 7356 2

原创 将数组右移

#include<stdio.h>int fun(int a[], int n, int m);int main() { int a[10], n, m; scanf_s("%d %d", &n, &m); for (int i = 0; i < n; i++) { scanf_s("%d", &a[i]); getchar(); }...

2019-11-27 12:21:53 151

原创 7-12 二分查找之过程

7-12 二分查找之过程直接上代码#include<stdio.h>int find(int left, int right, int X);int a[11];int main() { int x, n; scanf("%d %d", &n, &x); for (int i = 0; i <...

2019-11-13 14:15:53 1424

空空如也

空空如也

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

TA关注的人

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