摘要:
二叉树中序遍历,一种方法是递归,leetcode上的非递归方法有一种是用栈实现的,想来也没多大优化,手动递归比自动递归也快不了多少。还有一种不用栈的非递归方法,是Joseph M. Morris发明的,这位元老就是KMP算法中的M。 下面代码来自贴吧大神,经测试可用。我还没研究具体是个怎么回事,时间 阅读全文
摘要:
左值和右值 首先区分一下什么是左值,什么是右值。 左值就是可以写在赋值号左边的,右值是写在赋值号右边的。 比如 Stu foo() { return Stu(); } int a = 5; // a是左值 Stu s = foo(); // s是左值,foo()的返回值是右值 int c = a + 阅读全文
摘要:
本文用于记录Python学习过程中的笔记,因为不常使用python,每次想写py都得先查半天百度,这里记录一下,顺便正经学一学,不然每次想写都费半天劲。 先来一点无关内容,vscode的python插件智能提示很慢的话,把Language Server改成Pylance,不要用Jedi。来源:vsc 阅读全文
摘要:
c++ vector有个很神奇的初始化方法: vector<int> a = {1, 2, 3, 4, 5}; 这种方法让我感到很是惊奇,这是什么操作? 我知道初始化数组是这样写的,但是vector虽然是类似于数组,但是本身是个类,是要用构造函数初始化的,也不是什么原生数据类型啊,花括号初始化是什么 阅读全文
摘要:
开局提醒:本文所有都需要保存为.reg文件后导入,如果你直接在注册表编辑器中新建相关项,务必注意字符串中的引号是转义过的,也就是要将\"替换为",\\替换为\。 文件右键添加编辑功能 效果: 给任意后缀的文件都加了这个菜单项 注册表需导入项: Windows Registry Editor Vers 阅读全文
摘要:
chrono库功能挺强大的,但是太长了不方便记忆使用,写个简单的计时工具库。 libjc #pragma once #ifndef LIBJC_H #define LIBJC_H #include <chrono> namespace libjc { class jctime_duration; c 阅读全文
摘要:
可以通过GetLastError()来获取最新的错误代码,使用FormatMessage()函数可以将错误代码对应的错误内容输出。举个例子: // #include <windows.h> LPVOID errBuf; DWORD errCode = GetLastError(); FormatMe 阅读全文
摘要:
从安装了Git的linux系统拷贝/usr/share/locale/zh_CN/LC_MESSAGES/git.mo到$GIT_INSTALL_DIR\mingw64\share\locale\zh_CN\LC_MESSAGES\git.mo,并设置环境变量LANG=zh_CN.UTF-8即可。如 阅读全文
摘要:
注意:使用PortableGit-2.30.0.2-64-bit进行测试,在windows cmd命令行中测试(非git bash) 设置环境变量,LANG之后的.UTF-8必不可少,否则git log 的输出是utf-8编码,但是会按照GBK进行字符解码显示 set LANG=zh_CN.UTF- 阅读全文
摘要:
因为最近园子在审核,先发在了CSDN。但我更喜欢博客园,现在搬运过来 编写一个静态库 编写要打包为静态库的函数,内容如下: // jclib.cpp int func(int a, int b) { return a + b; } 在msvc开发人员命令提示符中执行 cl /c jclib.cpp 阅读全文