李正浩的博客

好的习惯能够让人终身受益
私信 关注
李正浩大魔王
码龄4年

在校学生

  • 392,789
    被访问量
  • 223
    原创文章
  • 15,198
    作者排名
  • 122
    粉丝数量
  • 于 2017-01-11 加入CSDN
获得成就
  • 获得167次点赞
  • 内容获得87次评论
  • 获得375次收藏
荣誉勋章
TA的专栏
  • 第一行代码(第三版)
    5篇
  • 我的LeetCode
    79篇
  • Unity贪吃蛇大作战教程
    5篇
  • WPF自制便签软件
    11篇
  • WPF
    17篇
  • c++
    49篇
  • Unity
    8篇
  • C#
    9篇
  • cocos2dx
    19篇
  • Lua
  • 面试相关
  • JavaScript
    1篇
  • 杂项、随笔
    7篇
  • 数据结构与算法
    113篇
  • 网络、TCP/IP协议
  • 数据库
    2篇
  • 计算机网络
  • Java
  • Python
    5篇
  • 深度学习
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

C#我对协变和逆变的理解

C#协变和逆变由于看书的时候对协变和逆变还是不太理解,因此从StackOverflow上看到了一个很好的回答:c# - still confused about covariance and contravariance & in/out - Stack Overflow,在这里我对这个回答进行汉化同时加上一点我自己的理解,帮助大家一起学习。用到的类和接口首先我们用如下的类进行介绍:class Animal{} // 动物类class Mammal: Animal{} // 哺乳动物类
原创
75阅读
0评论
0点赞
发布博客于 2 月前

[C++]cppreference离线手册

cppreference离线手册下载介绍cppreference是C++各种标准库函数API的查询手册。内容如下图:所有函数,如果不记得随时可以查询翻阅,还带详细demo。离线文档下载地址下载地址:https://zh.cppreference.com/w/Cppreference:Archives以下两个选项 chm版本或者html版本的离线文档都可以下载:98683013722)]...
原创
888阅读
0评论
2点赞
发布博客于 6 月前

第一行代码(第三版)第八章总结

[第一行代码(第三版)]第八章总结1. ContentProvider1.1 概念ContentProvider用于与其它应用程序共享数据。1.2 统一资源标识符(URI)其他的程序如果想使用本程序中的数据,需要通过 URI 找到对应的ContentProvider。内容提供者可以根据传过来的URI来确定它需要的表和数据。其格式如下:<prefix>://<authority>/<data_type>/<id>prefix:固定content
原创
227阅读
0评论
0点赞
发布博客于 8 月前

[第一行代码(第三版)]第七章总结

[第一行代码(第三版)]第七章总结1. 数据持久化1.1 概念将一些临时数据存储到本地。可以分为三类:文件存储SharedPreference数据库存储接下来对这三类分别进行详细介绍。1.2 文件存储1.2.1 介绍文件存储是最基本的存储方式,不对存储内容进行任何格式化处理,所有数据都是原封不动存储到本地文件中,因此适合存储一些简单文本或者二进制数据,如果需要存储一些复杂数据,可以使用Json或XML格式先规范后再进行存储。文件存储位置在data/data/[包名]/[文件名]。1
原创
118阅读
0评论
1点赞
发布博客于 8 月前

第一行代码(第三版)第六章总结

[第一行代码(第三版)]第六章总结1. 广播机制1.1 概念为了便于进行系统级别的消息通知,Android引入了一套类似的广播机制。Android广播分为两个方面:广播发送者和广播接收者,通常情况下,BroadcastReceiver指的就是广播接收者(广播接收器)。1.2 分类根据接收方式来划分:标准广播:一种完全异步执行的广播,所有的BroadcastReceiver都会几乎同时收到广播消息。有序广播:一种同步执行的广播,所有的BroadcastReceiver会根据优先级有序的一个一个
原创
123阅读
0评论
0点赞
发布博客于 8 月前

第一行代码(第三版)第四章总结

[第一行代码(第三版)]第四章总结1. 常用控件1.1 TextView1.1.1 概念TextView主要用来显示一段文本信息。1.1.2 常用属性layout_weight,leyout_height:指定控件的宽度和高度,可选值:match_parent,wrap_content和固定值。第一种是匹配父类容器的大小,第二种是根据内容自适应大小。单位一般用dp,这是一种与屏幕密度无关的尺寸单位,可以保证在不同手机上显示效果尽可能一致。dp:是一种密度无关像素,对应于160dpi下像素
原创
125阅读
0评论
0点赞
发布博客于 8 月前

第一行代码(第三版)第三章总结

第一行代码(第三版)第三章总结1. Activity1.1 Activity概念Activity为安卓四大组件之一(Activity/Service/BroadCast Recevicer/Content provider)。Activity主要负责与用户交互,提供一个显示的屏幕。1.2 创建Activity新建类MainActivity继承Activity基类。public class MainActivity extends AppCompatActivity{ @Overri
原创
323阅读
0评论
0点赞
发布博客于 8 月前

WIN10与WSL ubuntu文件互通

WIN10与WSL ubuntu文件互通方法一打开WSL子系统的shell终端,输入:cd /mnt则会显示当前windows系统的所有盘符.lzh@DESKTOP-HA5D6OQ:/mnt$ lsc d f之后使用mv或者cp等命令进行复制移动即可.方法二打开WSL子系统的shell终端,输入:explorer.exe .即可在资源管理器界面中浏览WSL系统的数据...
原创
2781阅读
2评论
4点赞
发布博客于 1 年前

版本控制方式

版本控制方式合理的版本号格式为:MAJOR.MINOR.PATCH.BUILD,以1.2.3.4举例:1:主要更新,例如全新的UI界面,许多重大的功能更新,框架更改等.2:次要更新,例如某个小的功能修改,新的功能添加.3:错误修复版本,在修复代码中bug时修改此数字.4.内部版本号(可以不使用),即预发型版号.现在很多软件放弃了版本号,而使用昵称取代,比如安卓的Pie,Oreo等,...
原创
190阅读
0评论
0点赞
发布博客于 1 年前

c++判断系统为windows或linux

C++判断系统为linux或windows// #if defined(WIN32) || defined(_WIN32) || defined(__WIN32) && !defined(__CYGWIN__) // do something...// #else // do something...// #endif
原创
368阅读
1评论
0点赞
发布博客于 1 年前

cmake生成同名的可执行文件和库文件

CMake生成同名的可执行文件和库文件 # 生成动态库文件 add_library(项目名_exe SHARED foo_lib.c) set_target_properties(项目名_exe_lib PROPERTIES OUTPUT_NAME 项目名) # 生成可执行文件 add_executable(项目名_exe foo_exe.c) set_t...
原创
569阅读
0评论
0点赞
发布博客于 1 年前

ubuntu下编译并使用jsoncpp

ubuntu编译并使用jsoncpp安装好gcc和g++删除所有旧引用(如果未安装过gcc,跳过此步骤) sudo update-alternatives --remove-all gcc sudo update-alternatives --remove-all g++安装gcc和g++ sudo apt-get install gcc-4.8 sud...
原创
409阅读
0评论
0点赞
发布博客于 1 年前

python计算线段夹角

计算两条线段之间的夹角1. 问题与解决思路如上图所示,要求图中线段AB,CD之间的夹角(AB,CD都没有方向),可以按照如下步骤计算:计算AB线段与X轴的夹角.计算CD线段与Y轴的夹角.合并两个夹角,因为求的是最小角度,所以需要对90进行求余,得到的角度为最后结果.2. 具体步骤首先计算出AB线段与X轴的夹角,将AB线段进行分解,如下图:其中角度的计算公式为◬=arcta...
原创
2592阅读
0评论
1点赞
发布博客于 2 年前

[WPF]数据绑定使用INotifyPropertyChanged发出通知后view中不更新

出BUG半天,经过了StackOverflow和百度之后才发现原来是这个原因:用快捷键生成的代码默认实现的是protect virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)//...由于使用了protect之后通知了,view中也接收不到,导致不更新,把protect改成public...
原创
192阅读
0评论
0点赞
发布博客于 2 年前

python制作阴阳师挂机脚本

项目地址:https://github.com/li-zheng-hao/yysScript软件截图:目前版本仅支持御魂副本双开,部分代码如下:def YuHunTwoWindow(LogUI): """ 自动御魂,双开模式 """ imgs = loadImgs() PassTime=1 while True: LogUI....
原创
6345阅读
14评论
11点赞
发布博客于 2 年前

windows下使用控制台打开conda虚拟环境

1、先把三个Anaconda下的路径添加到系统变量。F:\Anaconda3 F:\Anaconda3\Scripts F:\Anaconda3\Library\bin2、actiavte+环境名称,不加conda。
原创
2573阅读
2评论
1点赞
发布博客于 2 年前

[Python]Django从template传递参数到url

Django从template传递参数到url一共有两种方法:方法1在.html文件中,这样写:<a href="{% url 'paper:downloadFile' %}?index=1">images.zip001</a>index就是传递过去的参数,在url.py文件中这样写:re_path(r'^downloadFile/$', views.down...
原创
984阅读
0评论
1点赞
发布博客于 2 年前

Resharper c++ 使用Enter自动补全代码步骤

步骤菜单栏扩展resharperoptionIntelliSenseAutopopup将所有的菜单都选择Display and preselect,也就是预先选择,之后就可以用enter而不是用tab进行补全了。
原创
1501阅读
4评论
4点赞
发布博客于 2 年前

[C++ Primer] 第二章 变量和基本类型

第二章 变量和基本类型引用引用定义的时候必须初始化。引用初始化之后无法重新绑定到其它对象上。引用本身并不是对象,所以没有指向引用的引用(不管如何多层引用,引用的还是源对象)下面用一个简单的例子说明:int a=1;int& b=a;cout<<&a;//00D4FE0Ccout<<&b;//00D4FE0C可以看...
原创
68阅读
0评论
1点赞
发布博客于 2 年前

[深度学习]Keras利用VGG进行迁移学习模板

# -*- coding: UTF-8 -*-import kerasfrom keras import Modelfrom keras.applications import VGG16from keras.callbacks import TensorBoard, ModelCheckpointfrom keras.layers import Flatten, Dense, Dro...
原创
2722阅读
1评论
3点赞
发布博客于 2 年前

[Python]Python调用Matlab (Pycharm版本)

目录第一步:生成Build文件夹第二步: 复制build文件夹到Pycharm下第三步:调用代码第一步:生成Build文件夹C:\Program Files\MATLAB\R2016a\extern\engines\python运行命令(在pycharm的终端里面):python setup.py install 第二步: 复制build文件...
原创
5728阅读
7评论
1点赞
发布博客于 2 年前

[Python]装饰器总结

目录闭包装饰器简单装饰器 修饰带参函数的装饰器 本身带参数的装饰器 类装饰器 装饰器缺点 装饰器用途闭包说到装饰器就不能忽略闭包,下面先介绍一下闭包的概念:在一些语言中,在函数中可以(嵌套)定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生闭包。闭包可以用来在一个函数与一组“私有”变量之间创建关联关系。在给定函数被多次调用的过程中,这些私...
原创
65阅读
0评论
0点赞
发布博客于 2 年前

VS2019注册码

Visual Studio 2019 EnterpriseBF8Y8-GN2QH-T84XB-QVY3B-RC4DFVisual Studio 2019 ProfessionalNYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y
原创
29001阅读
7评论
18点赞
发布博客于 2 年前

[WPF]ICommand最佳使用方法

public class RelayCommand:ICommand { private Predicate<object> _canExecute; private Action<object> _execute; public RelayCommand(Predicate<object> canE...
原创
4538阅读
0评论
1点赞
发布博客于 2 年前

[Java]内存回收机制框架图

具体解释下面这篇博客总结的已经非常好了,我就不复制了:http://www.cnblogs.com/cielosun/p/6674431.html#12-%E5%8F%AF%E8%BE%BE%E6%80%A7%E5%88%86%E6%9E%90
原创
99阅读
0评论
0点赞
发布博客于 2 年前

[C++]vector内存的增长机制

例子#include &lt;iostream&gt;#include&lt;vector&gt;#include&lt;algorithm&gt;#include "CPPDemo.h"#include&lt;iomanip&gt;#include&lt;set&gt;#include&lt;vector&gt;using namespace std;int mai
原创
305阅读
0评论
1点赞
发布博客于 2 年前

[C#]C++/CLI中interior_ptr和pin_ptr的区别

interior_ptr当垃圾回收器移动对象时,Interior pointer能随之移动,并始终指向该对象。但是如果把这个指针返回给外部函数,那么当垃圾回收时(垃圾回收期间会压缩对象,),对象地址发生改变,指针会指向错误的地址。pin_ptr在外部调用托管堆中指针时,垃圾回收过程中该指针会发生改变,引起外部调用的错误。必须使用pin_ptr指针将该指针固定。因此,如果...
原创
435阅读
0评论
0点赞
发布博客于 2 年前

[C#]C++/CLI中^的含义

例子// here normal pointerP* ptr = new P; // usual pointer allocated on heapP&amp; nat = *ptr; // object on heap bind to native object//.. here CLI managed MO^ mngd = gcnew MO; // allocate on ...
原创
476阅读
0评论
0点赞
发布博客于 2 年前

[WPF]C#调用C++代码(通过C++/CLI)

用途通过使用C++ + Opencv 编写算法,然后用WPF(C#)编写程序界面,实现交互可以参考MSDN文档:https://docs.microsoft.com/en-us/cpp/windows/pin-ptr-cpp-cli?view=vs-2017项目结构代码CLR部分:CLRLibrary.h文件#pragma onceus...
原创
904阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]旋转链表

题目 代码 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:...
原创
137阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]复制带随机指针的链表

题目 代码/*// Definition for a Node.class Node {public: int val; Node* next; Node* random; Node() {} Node(int _val, Node* _next, Node* _random) { val = _val; ...
原创
116阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]扁平化多级双向链表

题目 https://leetcode-cn.com/explore/learn/card/linked-list/197/conclusion/764/代码 /*// Definition for a Node.class Node {public: int val; Node* prev; Node* next; Node* ch...
原创
230阅读
0评论
0点赞
发布博客于 2 年前

[WPF]将方法设为弃用

[System.Obsolete("这是一条提示信息,表示这个方法弃用了,使用此方法会有一条Warning信息")]private void SaveDataMessage(SaveMessage message){}在方法上方添加特性,即可,如果想要不允许通过编译,则需要在后方再加一个参数true。...
原创
216阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]设计链表

题目设计链表的实现。您可以选择使用单链表或双链表。单链表中的节点应该具有两个属性:val 和 next。val 是当前节点的值,next 是指向下一个节点的指针/引用。如果要使用双向链表,则还需要一个属性 prev 以指示链表中的上一个节点。假设链表中的所有节点都是 0-index 的。在链表类中实现这些功能:get(index):获取链表中第 index 个节点的值。如果索引无效...
原创
635阅读
1评论
2点赞
发布博客于 2 年前

[Leetcode]移除链表元素

题目 代码 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:...
原创
72阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]环形链表 II

题目 代码 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:...
原创
22阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]设计链表

题目 代码 typedef struct SingleList {public: int val; SingleList* next; };class MyLinkedList {public: /** Initialize your data structure here. */ MyLinkedList():_head(new ...
原创
82阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]最小栈

题目 代码class MinStack {public: /** initialize your data structure here. */ MinStack():nums(),sorted() { } void push(int x) { sorted[x]++; ...
原创
124阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]完全平方数

题目 代码 class Solution {public: int numSquares(int n) { vector&lt;int&gt; dp(n + 1, INT_MAX); dp[0] = 0; for (int i = 0; i &lt;= n; ++i) { ...
原创
157阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]设计循环队列

题目  代码class MyCircularQueue {public: /** Initialize your data structure here. Set the size of the queue to be k. */ MyCircularQueue(int k):array(k),pre(0),rail(0),numbers(0) { ...
原创
225阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]反转字符串中的单词 III

题目 代码class Solution {public: string reverseWords(string s) { for(int i=0,j=0;j&lt;=s.size();j++) { if(j==s.size()||s[j]==' ') { ...
原创
146阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]翻转字符串里的单词

题目 代码 class Solution {public: void reverseWords(string &amp;s) { if (s.empty()) return; //-----判断是否不包含单词,全是空格 bool isSpace = true; for (auto i : s) { if (i != ...
原创
368阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]杨辉三角 II

题目 代码 class Solution {public: vector&lt;int&gt; getRow(int rowIndex) { vector&lt;int&gt; array(rowIndex+1); for(int i=0;i&lt;=rowIndex;i++){ for (int j = i - ...
原创
162阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]长度最小的子数组

题目 代码 class Solution {public: int minSubArrayLen(int s, vector&lt;int&gt;&amp; nums) { if(nums.empty()) return 0; int start=0,end=0,size=nums.size(),sum=nums...
原创
95阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]最大连续1的个数

题目 代码 class Solution {public: int findMaxConsecutiveOnes(vector&lt;int&gt;&amp; nums) { int length=0; int maxLength=0; for(int i=0;i&lt;nums.size();i++) ...
原创
186阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]移除元素

题目 代码 class Solution {public: int removeElement(vector&lt;int&gt;&amp; nums, int val) { int i = 0, j = 0; while(j != nums.size()) { if(n...
原创
61阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]两数之和 II - 输入有序数组

题目 代码 class Solution {public: vector&lt;int&gt; twoSum(vector&lt;int&gt;&amp; numbers, int target) { int start=0,end=numbers.size()-1; vector&lt;int&gt; result; ...
原创
138阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]数组拆分 I

题目 代码 class Solution {public: int arrayPairSum(vector&lt;int&gt;&amp; nums) { std::sort(nums.begin(),nums.end()); int result=0; for(int i=0;i&lt;nums.size();i+=...
原创
560阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]二进制求和

题目 代码class Solution {public: string addBinary(string a, string b) { int lenA = a.length(); int lenB = b.length(); string result; int addFlag = 0; int i; int current = 0; fo...
原创
127阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]对角线遍历

题目 代码class Solution {public: vector&lt;int&gt; findDiagonalOrder(vector&lt;vector&lt;int&gt;&gt;&amp; matrix) { //判断是否为空 if(matrix.empty()) return {}; ...
原创
468阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]螺旋矩阵

题目 代码 class Solution {public: vector&lt;int&gt; spiralOrder(vector&lt;vector&lt;int&gt;&gt;&amp; matrix) { if (matrix.empty() || matrix[0].empty()) return {}; int heigh...
原创
5350阅读
0评论
1点赞
发布博客于 2 年前

[LeetCode]至少是其他数字两倍的最大数

题目  代码class Solution {public: int dominantIndex(vector&lt;int&gt;&amp; nums) { vector&lt;int&gt; sortedNums=nums; std::sort(sortedNums.begin(),sortedNums.end()); ...
原创
194阅读
0评论
0点赞
发布博客于 2 年前

[WPF]颜色主题功能

效果 点击选择皮肤颜色 代码 public enum Themes { Blue, Gray, Orange } /// &lt;summary&gt; /// 主题颜色管理类 /// &lt;/summary&gt; public static class The...
原创
1288阅读
2评论
1点赞
发布博客于 2 年前

[WPF]数据绑定失效的问题

有可能的原因如下:绑定的属性一定是属性而不能是字段,比如:public int data;是无法生效的,而public int data {get;set;}这样才能生效
原创
515阅读
0评论
0点赞
发布博客于 2 年前

[WPF]Win10便签软件

项目地址Github:项目地址  软件截图  项目中用到的技术和问题 [WPF]限制程序单例运行 [WPF]创建系统栏小图标 [WPF]程序随系统自启动 [WPF]xml序列化以及反序列化数据 [WPF]项目整合Metro和MaterialDesignInXamlToolkit UI框架 [WPF]鼠标移动到Button颜色改变效果设置 一个...
原创
614阅读
4评论
2点赞
发布博客于 2 年前

[WPF]使用Fody提高效率

下载安装及使用 代码实例 public class Person:INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; public string Name { get; set; } [Depen...
原创
2856阅读
0评论
0点赞
发布博客于 2 年前

[WPF]限制程序单例运行

代码 System.Threading.Mutex mutex; protected override void OnStartup(StartupEventArgs e) { bool ret; mutex = new System.Threading.Mutex(true, "StikyNo...
原创
149阅读
0评论
1点赞
发布博客于 2 年前

[WPF]创建系统栏小图标

隐藏窗体任务栏图标/// &lt;summary&gt; /// MainWindow.xaml 的交互逻辑 /// &lt;/summary&gt; public partial class MainWindow { public MainWindow() { InitializeComponent...
原创
538阅读
0评论
0点赞
发布博客于 2 年前

[WPF]程序随系统自启动

代码Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",(bool)btn.IsChecked);Assembly curAss...
原创
195阅读
0评论
1点赞
发布博客于 2 年前

[WPF]xml序列化以及反序列化数据

代码 XML序列化工具类  public static class XMLHelper { /// &lt;summary&gt; /// 将对象序列化为指定的文件名 /// &lt;/summary&gt; /// &lt;typeparam name="T"&gt;&lt;/typeparam&gt; ...
原创
336阅读
0评论
1点赞
发布博客于 2 年前

[WPF]项目整合Metro和MaterialDesignInXamlToolkit UI框架

项目地址MapApps:MetroMaterialDesignInXamlToolkit:MaterialDesignInXamlToolkitMapApps官网:官网链接 官方整合文档官方提供的两个框架共存的方式:点击链接 实例 1、打开Nuget包管理  2、搜索Metro,点击项目,选择一个版本安装3、MaterialDesig...
原创
10963阅读
2评论
0点赞
发布博客于 2 年前

[WPF]鼠标移动到Button颜色改变效果设置

代码 &lt;Style x:Key="Button_Menu" TargetType="{x:Type Button}"&gt; &lt;Setter Property="Width" Value="24" /&gt; &lt;Setter Property="Height" Value="24" /&am
原创
6764阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode] 寻找数组的中心索引

题目 代码  class Solution {public: int pivotIndex(vector&lt;int&gt;&amp; nums) { int right=0; for(auto i:nums) { right+=i; } int index...
原创
255阅读
0评论
0点赞
发布博客于 2 年前

[Leetcode]在排序数组中查找元素的第一个和最后一个位置

题目 代码class Solution {public: vector&lt;int&gt; searchRange(vector&lt;int&gt;&amp; nums, int target) { int begin=0,end=nums.size()-1; int mid; bool findTarget=fa...
原创
221阅读
0评论
0点赞
发布博客于 2 年前

[WPF]auto和*总结

Auto和*效果Auto 表示自动适应显示内容的宽度, 控件有多大,就显示多大。* 则表示按比例来分配宽度。 话不多说,直接上例子理解 例子1  代码: &lt;Grid ShowGridLines="True"&gt; &lt;Grid.RowDefinitions&gt; &lt;RowDefiniti...
原创
387阅读
1评论
0点赞
发布博客于 2 年前

[Leetcode]寻找峰值

题目  思路如果常规解法不考虑时间复杂度,直接遍历即可得到峰值,时间复杂度为O(n),题目要求O(logn),因此我们需要使用二分法。 首先考虑题目要求:nums[-1]=nums[n]=-∞,因此在数组开始必然存在一个上坡,在结尾必然存在一个下坡。这里给一个例子:[1,3,2,0],这里按照二分法一开始mid选的值为3,我们发现3大于2,因此有了一个下坡,而数...
原创
296阅读
0评论
0点赞
发布博客于 2 年前

[LeetCode]数组中的第K个最大元素

题目    代码class Solution {public: int findKthLargest(vector&lt;int&gt;&amp; nums, int k) { std::map&lt;int,int,std::greater&lt;int&gt;&gt; times; for(auto i :nums) ...
原创
54阅读
0评论
0点赞
发布博客于 2 年前

[C++]std::sort()函数使用总结

函数声明 template&lt; class RandomIt, class Compare &gt;constexpr void sort( RandomIt first, RandomIt last, Compare comp );以一定排序规则排序指定范围内的元素,但是算法不具有稳定性,如果元素的值是相同的话不保证它们的相对顺序保持不变。 参数说明fir...
原创
372阅读
0评论
0点赞
发布博客于 2 年前

[WPF]VS2019打包WPF程序

准备打包可能遇到错误在“系统必备”对话框中启用“从与我的应用程序相同的位置下载系统必备组件”,必须将“Microsoft .NET Framework4.5.2 (x86 和 x64)”项的文件“DotNetFX452\NDP452-KB2901907-x86-x64-AllOS-ENU.exe”下载到本地计算机解决办法下载.net框架,地址:英文版本地址 —— 中文版本地...
原创
7244阅读
6评论
1点赞
发布博客于 3 年前

[WPF]DataContext结果不显示

namespace DataContext_ItemSource_Demo{ public class Person { public string Name; } public class ViewModel { public MainWindow win; public Person person; ...
原创
629阅读
0评论
0点赞
发布博客于 3 年前

[C#]从两个例子理解async/await

1 例子1输出的结果为:可以看出执行的结果为:A——D——B——C——E.我们再看下一个例子(注意,我们把代码中D和E的位置交换)2 例子2结果:结果为:A——B——C——E——D3 理解Async方式,使用Async标记Test为异步方法,用Await标记Task表示方法内需要耗时的操作。主线程碰到a...
原创
909阅读
0评论
1点赞
发布博客于 3 年前

Visual Studio2017快速收缩/扩展代码块

首先要设置伸缩函数的同时也伸缩region块: 快捷键Ctrl+M+O 收缩所有方法Ctrl+M+L 展开所有方法
原创
3499阅读
0评论
0点赞
发布博客于 3 年前

[WPF]数据绑定Demo

目录1、View模型代码2、ViewModel模型代码3、数据模型4、样例演示5、一些知识点这里简单实现一个listbox绑定的功能,符合MVVM模型。 View模型代码(View视图以及窗体类的后台代码)&lt;Grid&gt; &lt;ListBox Name="ListBox"&gt; &lt;ListBox.Ite...
原创
209阅读
0评论
0点赞
发布博客于 3 年前

【随笔】Ubuntu18.04下virtualbox卡死的解决办法

//得到该进程ID Xpgrep Xorg//杀掉进程kill X然后重新登陆帐号即可
原创
3471阅读
0评论
0点赞
发布博客于 3 年前

5. 最长回文子串

题目 代码class Solution {public: string longestPalindrome(string s) { if(s.size()==1) return s; string max=s.substr(0,1); int maxLength=0; for(int i...
原创
80阅读
0评论
0点赞
发布博客于 3 年前

3. 无重复字符的最长子串

题目 代码class Solution {public: int lengthOfLongestSubstring(string s) { //用dic存储每个字符最后一次出现的位置 vector&lt;int&gt; dic(255,-1); int maxLength=0; //start表示当前第一个...
原创
94阅读
0评论
0点赞
发布博客于 3 年前

49. 字母异位词分组

题目 代码class Solution {public: vector&lt;vector&lt;string&gt;&gt; groupAnagrams(vector&lt;string&gt;&amp; strs) { vector&lt;vector&lt;string&gt;&gt; res; unordered_map&lt;s...
原创
60阅读
0评论
0点赞
发布博客于 3 年前

73. 矩阵置零

题目 代码class Solution {public: void setZeroes(vector&lt;vector&lt;int&gt;&gt;&amp; matrix) { if(matrix.size()==0) return; int lastRow=-1,H=matrix.size(),W=matrix...
原创
165阅读
0评论
0点赞
发布博客于 3 年前

15. 三数之和

题目 代码class Solution {public: vector&lt;vector&lt;int&gt;&gt; threeSum(vector&lt;int&gt;&amp; nums) { //先固定住第一个数字,然后后面两个数字为 i+1和 nums.size()-1开始往中间缩小,并且要考虑数字重复的问题,时间复杂度为O(n²) ...
原创
375阅读
0评论
0点赞
发布博客于 3 年前

268. 缺失数字

题目 代码class Solution {public: int missingNumber(vector&lt;int&gt;&amp; nums) { int result = nums.size(); for(int i=0;i&lt;nums.size();i++){ result ^=...
原创
68阅读
0评论
0点赞
发布博客于 3 年前

20. 有效的括号

题目 代码class Solution {public: bool isValid(string s) { stack&lt;char&gt; sta; for(auto i:s) { switch(i) { case '[': ...
原创
57阅读
0评论
0点赞
发布博客于 3 年前

118. 杨辉三角

题目 代码class Solution {public: vector&lt;vector&lt;int&gt;&gt; generate(int numRows) { vector&lt;vector&lt;int&gt;&gt; res; if(numRows==0) return res; f...
原创
104阅读
0评论
0点赞
发布博客于 3 年前

190. 颠倒二进制位

题目 代码class Solution {public: uint32_t reverseBits(uint32_t n) { n=(n&gt;&gt;16)|(n&lt;&lt;16); n=((n&amp;0xff00ff00)&gt;&gt;8)|((n&amp;0x00ff00ff)&lt;&lt;8); n=((...
原创
146阅读
0评论
0点赞
发布博客于 3 年前

461. 汉明距离

题目 代码class Solution {public: int hammingDistance(int x, int y) { int res=x^y; int num=1; int result=0; while(num!=0) { if((num&amp;res...
原创
60阅读
0评论
0点赞
发布博客于 3 年前

326. 3的幂

题目 代码class Solution {public: bool isPowerOfThree(int n) { //3的19次方是3的倍数的最大值 //用换底公式 return n &gt; 0 &amp;&amp; (log(INT_MAX)/log(3)) % n == 0; }}; ...
原创
126阅读
0评论
0点赞
发布博客于 3 年前

204. 计数质数

题目 代码class Solution {public: int countPrimes(int n) { if(n&lt;=2) return 0; int res=1; bool *prime = new bool[n+1]; for(int i=3;i&lt;n;i++){...
原创
115阅读
0评论
0点赞
发布博客于 3 年前

412. Fizz Buzz

题目 代码class Solution {public: vector&lt;string&gt; fizzBuzz(int n) { vector&lt;string&gt; res; for(int i=1;i&lt;=n;i++) { if(i%3==0&amp;&amp;i%5==0) ...
原创
52阅读
0评论
0点赞
发布博客于 3 年前

198. 打家劫舍

题目 代码class Solution {public: int rob(vector&lt;int&gt;&amp; nums) { if(nums.size()==0) return 0; if(nums.size()==1) return nums[0]; if(num...
原创
104阅读
0评论
0点赞
发布博客于 3 年前

53. 最大子序和

题目 代码class Solution {public: int maxSubArray(vector&lt;int&gt;&amp; nums) { vector&lt;int&gt; max(nums.size(),0); if(nums.size()==0) return 0; max[0]=...
原创
64阅读
0评论
0点赞
发布博客于 3 年前

121. 买卖股票的最佳时机

题目 代码class Solution {public: int maxProfit(vector&lt;int&gt;&amp; prices) { if(prices.size()==0) return 0; vector&lt;int&gt; salarys(prices.size(),0); ...
原创
102阅读
0评论
0点赞
发布博客于 3 年前

70. 爬楼梯

题目 代码class Solution {public: int climbStairs(int n) { if(n==1) return 1; int step=0; int step1=1,step2=1; for(int i=1;i&lt;n;i++) ...
原创
148阅读
0评论
0点赞
发布博客于 3 年前

278. 第一个错误的版本

题目 代码// Forward declaration of isBadVersion API.bool isBadVersion(int version);class Solution {public: int firstBadVersion(int n) { int low=1,high=n; while(low&lt;=hig...
原创
69阅读
0评论
0点赞
发布博客于 3 年前

88. 合并两个有序数组

题目 代码class Solution {public: void merge(vector&lt;int&gt;&amp; nums1, int m, vector&lt;int&gt;&amp; nums2, int n) { int i=0; while(i&lt;n) { nums1[m+i...
原创
71阅读
0评论
0点赞
发布博客于 3 年前

C++string与int的相互转换(使用C++11)

一、int转string#include &lt;iostream&gt;#include &lt;string&gt; int main() { double f = 23.43; double f2 = 1e-9; double f3 = 1e40; double f4 = 1e-40; double f5 = 123456789; ...
原创
82096阅读
5评论
32点赞
发布博客于 3 年前

108. 将有序数组转换为二叉搜索树

题目 代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}...
原创
195阅读
0评论
0点赞
发布博客于 3 年前

102. 二叉树的层次遍历

题目 代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}...
原创
114阅读
0评论
0点赞
发布博客于 3 年前

101. 对称二叉树

题目 代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}...
原创
91阅读
0评论
0点赞
发布博客于 3 年前

98. 验证二叉搜索树

题目 代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}...
原创
78阅读
0评论
0点赞
发布博客于 3 年前

104. 二叉树的最大深度

题目 代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {}...
原创
31阅读
0评论
0点赞
发布博客于 3 年前

141. 环形链表

题目 代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ...
原创
58阅读
0评论
0点赞
发布博客于 3 年前