- 博客(80)
- 资源 (7)
- 收藏
- 关注
原创 LeetCode算法 —— 外观数列(循环递推)
题目:给定一个正整数 n(1 ≤ n ≤ 30),输出外观数列的第 n 项。注意:整数序列中的每一项将表示为一个字符串。「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。前五项如下:111211211111221第一项是数字 1描述前一项,这个数是 1 即 “一个 1 ”,记作 11描述前一项,这个数是 11 即 “两个 1 ” ,记作 21描述前一项,这个数是 21 即 “一个 2 一个 1 ” ,记作 1211描述
2020-07-31 08:51:49 276
原创 LeetCode算法 —— 解数独
题目如下所示:编写一个程序,通过已填充的空格来解决数独问题。一个数独的解法需遵循如下规则:数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。空白格用 ‘.’ 表示。Note:给定的数独序列只包含数字 1-9 和字符 ‘.’ 。你可以假设给定的数独只有唯一解。给定数独永远是 9x9 形式的。代码如下所示:#include <iostream>#include <algorith
2020-07-31 08:48:28 1721
原创 LeetCode算法 —— 有效的数独
题目:判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。示例 1:输入:[[“5”,“3”,".",".",“7”,".",".",".","."],[“6”,".",".",“1”,“9”,“5”,".",".","."],[".",“9”,“8”,".",".",".",".",“6”,"."],[“8”,"."
2020-07-31 08:35:03 323
原创 LeetCode算法 —— 在排序数组中查找元素的第一个和最后一个位置
题目:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。你的算法时间复杂度必须是 O(log n) 级别。如果数组中不存在目标值,返回 [-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]代码如下所示:#include <iostream>
2020-07-31 08:33:14 217
原创 【WPF高仿 Windows记事本】开发日记 (十) 查找上一个与查找下一个 替换菜单 跳转菜单 时间菜单与窗口标题的转换器功能实现
前言作者:浪子花梦,一个有趣的程序员 ~前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能实现)【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 Windows记事本】开发日记 (三) 完善所有菜单的命令绑定并创建Models层的设计【WPF高仿 Windows记事本】开发日记 (四) 菜单命令快捷键实现,实现查看菜单功能(三层架构初步使用)【WPF高仿 Windows记事本】开发日记.
2020-07-30 10:07:11 669
原创 【WPF高仿 Windows记事本】开发日记 (九) interactivity交互事件使用,查找窗口功能实现,配置文件的序列化与反序列化
前言作者:浪子花梦,一个有趣的程序员 ~此文将完成interactivity事件的使用,为什么需要用到这个功能呢?因为程序中需要使用加载事件,如果我们需要将事件处理器定义在隐藏代码中,这就破坏了MVVM设计模式了,使用interactivity可以很好的与业务逻辑中的命令进行绑定,实现解耦,另外,此文章将实现查找窗口的功能,搜索指定的文本内容,在上面的演示上展示过了,包括一些细节很重要的知识点 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能.
2020-07-28 20:05:44 859
原创 LeetCode算法 —— 搜索旋转排序数组
题目 :假设按照升序排序的数组在预先未知的某个点上进行了旋转。( 例如,数组?[0,1,2,4,5,6,7]?可能变为?[4,5,6,7,0,1,2]?)。搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回?-1?。你可以假设数组中不存在重复的元素。你的算法时间复杂度必须是?O(log?n) 级别。二分探索(O(LogN))#include <iostream>#include <stack>#include <algorithm&g
2020-07-27 18:38:18 212
原创 LeetCode算法 —— 最长有效括号
题目:给定一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长的包含有效括号的子串的长度。示例 1:输入: “(()”输出: 2解释: 最长有效括号子串为 “()”示例 2:输入: “)()())”输出: 4解释: 最长有效括号子串为 “()()”直接copy官方代码 . . .1)动态规划:代码如下所示:class Solution {public: // ( () () ) ( () // () ) ()() ) int longestValidP
2020-07-27 17:51:15 387
原创 【WPF高仿 Windows记事本】开发日记 (八) Bing搜索菜单功能实现,利用消息和依赖注入解除程序间的耦合
前言作者:浪子花梦,一个有趣的程序员 ~此文将完成Bing搜索菜单的功能(带参数的命令绑定),利用消息解除ViewModel与View之间的耦合性,并且利用一个非常重要的技术——依赖注入(解决ViewModel与ViewModel之间的耦合性 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能实现)【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 Windows记事本】开发日记.
2020-07-27 13:39:01 393
转载 依赖注入的概念及解释
依赖注入:DI, 假如你写了一个发法,方法的参数是一个对象, 调用这个方法的时候,需要实例化这个对象 ,并把它传递给这个方法。依赖注入模式要解决的问题:经常同时出现的另一个概念,就是IOC,从代码内部转到外部。IoC 和 DI 有什么关系?其实它们是同一个概念的不同角度描述,由于控制反转的概念比较含糊(可能只是理解为容器控制对象这一个层面,很难让人想到谁来维护依赖关系),所以 2004 年大师级人物 Martin Fowler 又给出了一个新的名字:“依赖注入”,相对 IoC 而言,“依赖注入” 明
2020-07-27 09:20:37 1368
原创 C# 之 简单的依赖注入代码示例
using Microsoft.Extensions.DependencyInjection;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DependencyInjection{ class Program { static void Main(string[] a
2020-07-26 22:04:48 1087 1
原创 C# 之 接口隔离原则讲解
接口隔离原则的解释如下:客户端不应该依赖它不需要的接口。一个类对另一个类的依赖应该建立在最小的接口上。下面我将举出两个例子来讲解这个原则特性是怎么样的 . . .1)第一个例子是一个女人在街上开着小汽车,然后这个小汽车坏了,女人哭了非常伤心,她的男朋友安慰着她,说给她买一辆坦克开 . . .首先,我们看下面的代码:class Program{ static void Main(string[] args) { var girl = new GirlFriend(n
2020-07-26 20:47:08 791
原创 C# 之 利用接口实现依赖反转
当我们在一个类中定义另一个类时,这就形成了耦合,通过具体的逻辑这种耦合可大可小,我们可以利用接口来解除这种不必要的耦合性,如下所示,这是没有使用接口的情况:class Car{ public void SayHello() { Console.WriteLine("Hello, I'm is Car!!!"); }}class Truck{ public void SayHello() { Console.WriteLine
2020-07-26 19:30:05 746
原创 WPF利用消息解决ViewModel与View之间的耦合性
我们先来看一下没有解耦合之前的代码,如下所示:我们在ViewModel 中的一个命令响应方法中,打开一个窗口(View),这就产生了耦合性,因为这样使 ViewModel与View之间谁也离不开谁,当我们把这个FindWindow窗口从项目中删除时,将产生一个很直观的问题 —— 编译错误,所有我们就需要一个事物来解除耦合性,这个技术就是消息的使用 . . .首先,我们需要几个类来实现这个消息功能,如下所示:其中画紫色框框表示消息的类型,就是说这个消息是什么 . . .需要这些类型的源码的小伙伴可
2020-07-26 15:39:39 844 1
原创 WPF使用成熟的命令系统(带参数)
前文不需要带参数的成熟命令:WPF使用成熟的命令系统需要的五个类如下所示:定义分别如下所示:IExecuteWithObject 接口:public interface IExecuteWithObject{ object Target { get; } void ExecuteWithObject(object parameter); void MarkForDeletion();}IExecuteWithObjectAndResult 接口:public
2020-07-26 10:31:51 1197
原创 【WPF高仿 Windows记事本】开发日记 (七) 编辑菜单中的内置命令使用,查看与替换的窗口设计(包含窗口变为对话框)
前言作者:浪子花梦,一个有趣的程序员 ~此文章将用一些WPF内置的一些命令来替换我们之前定义好的一些命令,另外我们将讲述如何来注册命令(注册查看与替换命令),并且实现查看与替换的窗口设计 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能实现)【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 Windows记事本】开发日记 (三) 完善所有菜单的命令绑定并创建Models层的设.
2020-07-25 20:21:06 539
原创 WPF将窗口设计成对话框模式
将窗口设计成对话框的样子方式比较多,很常见的方法就是使用XAML代码来修改样式,而此这边将讨论如何利用WIN32API 实现这个对话框 . . .我们刚开始的样子是这样的:改过的样子如下所示:先准备Win32API:后台代码重写方法:OnSourceInitialized 即可:...
2020-07-25 19:08:14 858
原创 WPF使用内置命令与注册命令
WPF 内置了许多有用的命令,而这些命令和有的类型已经产生了关联,比较TextBox 与 复制、粘贴等命令关联,下面我们看看如何使用这种内置命令 . . .我们在编辑这个菜单里面使用内置命令,如下所示:这些命令能够响应 TextBox文本框类型,而他们是有默认快捷键的,如下所示:所以我们可以利用这些命令对文本框中的文本作出一些基本的操作 . . .而有的内置命令(或者其它命令)是文本框没有激活的,需要我们自动来将命令注册到 TextBox中,比如有的命令:查找(...
2020-07-25 18:59:35 796
原创 LeetCode算法 —— 两数相除(移位操作高效方法)
给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。返回被除数 dividend 除以除数 divisor 得到的商。整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 truncate(-2.7335) = -2示例 1:输入: dividend = 10, divisor = 3输出: 3解释: 10/3 = truncate(3.33333…) = truncate(3)
2020-07-25 00:42:40 620
原创 【WPF高仿 Windows记事本】开发日记 (六) 自动换行、滚动条命令绑定,实现字体模式的选择功能(格式菜单功能实现)
前言作者:浪子花梦,一个有趣的程序员 ~此文章将完成 格式菜单中的所有功能:自动换行的一些绑定、字体的选择功能前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能实现)【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 Windows记事本】开发日记 (三) 完善所有菜单的命令绑定并创建Models层的设计【WPF高仿 Windows记事本】开发日记 (四) 菜单命令快捷键实现,实现查看菜.
2020-07-24 18:28:57 570
原创 【WPF高仿 Windows记事本】开发日记 (五) 使用成熟的自动更新代码(ObservableObject)、实现是否显示状态栏功能、鼠标的滚轮命令绑定(查看菜单功能实现)
前言作者:浪子花梦,一个有趣的程序员 ~在上一文中我们对数据层的DocumentModel 类 实现了自动更新属性,此文章将使用更加成熟的代码,使得属性的自动更新更加完善,并且此文章将实现 查看菜单中的状态栏菜单功能(是否显示状态栏),还有鼠标的滚轮命令绑定前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局与 帮助菜单 功能实现【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 Windows记事本】开.
2020-07-24 12:28:55 1555
原创 WPF使用鼠标滚轮绑定命令
自定义 MouseGesture类的派生类,取名为 MouseWheelGesture,代码实现如下所示:class MouseWheelGesture : MouseGesture{ public MouseWheelGesture() : base(MouseAction.WheelClick) { } public MouseWheelGesture(ModifierKeys modifierKeys) : base(MouseAction.WheelClick, modifier
2020-07-24 12:24:22 935
原创 WPF使用成熟的属性自动更新代码
创建一个类名为 ObservableObject的类,其中的代码如下所示:using System;using System.Collections.Generic;using System.ComponentModel;using System.Linq;using System.Linq.Expressions;using System.Reflection;using System.Runtime.CompilerServices;namespace Notepad_WPF.Help
2020-07-24 09:32:17 1355
原创 【WPF高仿 Windows记事本】开发日记 (四) 菜单命令快捷键实现,实现查看菜单功能(三层架构初步使用)
前言作者:浪子花梦,一个有趣的程序员 ~在上一文中我们对所有菜单进行了命令的绑定(还没有实现它的功能),此文章我们将对这些命令进行一个快捷键的绑定,并且完成一个很重要的功能(MVVM三层架构的交互使用:UI、业务逻辑、数据层),完成对 查看菜单中对字体的大小功能进行实现 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局与 帮助菜单 功能实现【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令【WPF高仿 .
2020-07-23 21:11:51 705
原创 WPF在XAML中给命令绑定快捷键
假如我们需要给 Shift+Ctrl+N 绑定快捷键有两种方式绑定命令:1)使用 Gesture:2)使用 Key 和 Modifiers
2020-07-23 16:47:56 945
原创 【WPF高仿 Windows记事本】开发日记 (三) 完善所有菜单的命令绑定并创建Models层的设计
前言作者:浪子花梦,一个有趣的程序员 ~在上一文中我们只将帮助菜单完成了MVVM模式的搭建,此文将完善其它菜单的业务逻辑搭建,并且完成 MVVM 中的Models 搭建 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局与 “帮助菜单“ 功能实现【WPF高仿 Windows记事本】开发日记 (二) 初步使用 MVVM 模式设计 “帮助菜单“ 的三个命令1)创建 Models 层的数据类:所有 ViewModels中的类(业务逻辑层),都将对此类进行.
2020-07-23 16:17:25 545
原创 【WPF高仿 Windows记事本】开发日记 (二) 初步使用MVVM模式设计 帮助菜单 的三个命令
前言作者:浪子花梦,一个有趣的程序员 ~在上一文中,我们给帮助菜单设置了点击事件,事件处理器在隐藏代码中,生成程序时,他们会编译在一起,这就造成了紧耦合性非常大,今天我们将 使用MVVM模式来解除耦合性,使用命令系统来替换点击事件 . . .前文如下所示:【WPF高仿 Windows记事本】开发日记 (一) UI布局与 “帮助菜单“ 功能实现1)自定义命令类:使用别人写好的轮子,直接调用即可,我们创建一个文件夹 Helpers,其中有三个类,这三个类就是我在网上下载的别人写好的类,使用这.
2020-07-23 12:46:12 623
原创 WPF使用成熟的命令系统
需要的三个类如下所示:对应的代码分别如下所示,直接Copy即可(只需要 注意一下命名空间):RelayCommand 命令类:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.Input;namespace Notepad_WPF.Helpers{ public c
2020-07-23 12:30:28 525 1
原创 【WPF高仿 Windows记事本】开发日记 (一) UI布局(帮助菜单功能实现)
在网上买了个记事本的开发教程,刚好用来巩固自己的WPF技术,每天会在此分享开发过程 . . .此文章将教你如何对自己的程序进行布局,还有完成最简单的帮助菜单.一)UI 布局:
2020-07-23 09:57:18 1107 1
原创 C# 精通之路 —— .NET Framework最具创意 —> 定制特性,这些细节知识你知多少?
作者:浪子花梦,一个有趣的程序员 ~此文章将讲解 .net 上面一个非常有用的技术 —— 定制特性,学习源于《CLR via C#》 . . .文章目录
2020-07-22 17:15:47 324
转载 C# 之 利用反射获取指定的类(转载)
原文链接: https://www.cnblogs.com/wangbaohui/p/6727274.html1、假设你要反射一个 DLL 中的类,并且没有引用它(即未知的类型):Assembly assembly = Assembly.LoadFile(“程序集路径,不能是相对路径”); // 加载程序集(EXE 或 DLL)dynamic obj = assembly.CreateInstance(“类的完全限定名(即包括命名空间)”); // 创建类的实例2、若要反射当前项目中的类(即当前.
2020-07-22 13:04:57 5523
原创 LeetCode算法 —— K 个一组翻转链表
题目:给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。示例:给你这个链表:1->2->3->4->5当 k = 2 时,应当返回: 2->1->4->3->5当 k = 3 时,应当返回: 3->2->1->4->5说明:你的算法只能使用常数的额外空间。你不能只是单纯的改变节点内部的值,而
2020-07-21 20:11:53 333
原创 LeetCode算法 —— 反转链表(递归 + 迭代)
题目:反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。递归的版本是看别人写的,只会写迭代,(>_<)代码如下所示:#include <iostream>using namespace std;struct ListNode { int val; ListNode* next; ListNo
2020-07-21 16:22:32 887
原创 C# 精通之路 —— [从0到1] 探索委托技术,这些细节知识你知多少?
作者:浪子花梦,一个有趣的程序员 ~此文详细的讲解委托的各方面技术,文章可能有点长,希望你能看完 ^ _ ^文章目录初识委托(示例代码讲解)委托揭秘委托链详解泛型委托使用委托的几种语法糖委托和反射初识委托(示例代码讲解)开始讲解之前,让我们看看什么是回调函数,下面是我在度娘上面Copy的一段话:当程序跑起来时,一般情况下,应用程序(application program)会时常通过API调用库里所预先备好的函数。但是有些库函数(library function)却要求..
2020-07-21 11:17:57 395 1
原创 LeetCode算法 —— 两两交换链表中的节点(递归 + 迭代)
官方的答案,搞懂之后在此作个笔记 . . .题目:给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。代码如下所示:struct ListNode { int val; ListNode* next; ListNode(int x) : val(x), next(NULL) {}};class Solution {public: // pre 1 -> 2 -> 3 -&.
2020-07-19 22:51:53 413
原创 C+EasyX制作《扫雷》小游戏!让你在学习的过程中扫除掉所有的不开心!
游戏的实现比较简单,点击一个格子时,判断是否点击到雷区,如果没有的话就判断四周有多少颗雷,然后将雷的个数显示出来,我们需要的素材如下所示:如果有需要素材的小伙伴可以私信,我会发给你的 ^ _ ^游戏的效果如下所示: 小游戏制作扫雷 代码如下所示:#include <iostream>#include <graphics.h>#include <
2020-07-19 20:16:21 909 1
原创 C+EasyX 实现的《俄罗斯方块》小游戏,附C# 实现的控制台俄罗斯方块链接!
C# 俄罗斯方块链接如下所示:控制台《俄罗斯方块》小游戏,Copy代码可直接运行!用C# 写的俄罗斯方块只用了 1000 行左右的代码,而用C写的源码达到了 1500行,很明显我用C# 写俄罗斯方块进行了优化,希望可以帮助到爱学习的你!C写的俄罗斯方块 素材只有一首音乐:程序的效果如下所示: 小游戏制作俄罗斯方块 代码实现如下所示://相关头文件#include &l.
2020-07-19 19:18:32 2780 2
原创 基于C++和EasyX 实现的《双人贪吃蛇》小游戏,你不找个小伙伴陪你一起玩吗?
两条蛇实现原理:先定义好一条蛇,然后派生出另外一条蛇,重要第二条蛇的移动方向的方法,换成键盘上的另外四个键,然后就是正常的游戏判断,两条蛇相碰的判断等等 . . .素材就是一个背景加上一个音乐,其它的都是基于 EasyX 里的方法画出来的游戏效果如下所示: 小游戏制作贪吃蛇 代码如下所示:#include <iostream> #include <grap
2020-07-19 19:08:35 984 4
原创 还在玩《钢琴大师》吗?自己在家动手做一个出来!(基于C+EasyX 实现)
一个低配版本的钢琴大师,没有其它花里胡哨的操作,也没有游戏结束的判断,无聊的玩玩吧,一个人玩还是挺有意思的,哈哈 ~游戏中只有一个背景素材、一首音乐,其它的元素都是通过 EasyX图形库中的 api 画出来的,希望能够帮助爱学习的你!游戏效果如下所示: 钢琴大师 代码如下所示:#include <iostream>#include <graphics.h&g
2020-07-19 18:57:02 1131 2
Java/JavaWeb基础知识源码
2020-09-23
MarketCalculator.rar(销售计算器)
2020-04-03
Program.cs
2020-04-03
SaleSystem.rar
2020-04-03
java使用s7connector读取plc报错,返回0x8104
2023-12-04
rabbitmq死信队列消息离奇失踪
2023-08-01
HikariPool连接池崩溃 08006
2023-06-13
使用 HikariPool数据源,连接postgresql 超时之后,一直连接不上
2023-05-05
调用webservice接口报错 policy相关
2023-04-10
linux下载wsdl文件
2023-04-10
IDEA2017.2.6 对象获取/设置属性时报红
2022-08-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人