自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 资源 (1)
  • 收藏
  • 关注

原创 Lab2_Simple Shell_2020

这里冒号后面需要加上空格,第一次没加上空格,死活匹配不过去,发现后被自己气死;案例有超时时间,31s的时候就time out了,鉴于我ubuntu14,还是虚拟机,碍于性能问题总是跑超时,其实答案是对的,修改gradelib.py, 增加了判题的超时时间,就过去了;$ export PATH=$PATH:/home/moocos/riscv-gnu-toolchain/bin/bin //路径可以替换为你自己的路径//然后编译xv6$ make...

2023-03-07 22:10:41 541

原创 二叉树的四种遍历算法_递归和迭代的实现

写在前面:二叉树的四种遍历方式,leetcode有对应的题目,题号为:94,102,144,145;大家看完可以去拿下这四道题;迭代算法参考学堂在线课程:清华-数据结构-邓俊晖老师;代码略做修改适应leetcode判题系统;二叉树的先序遍历:定义:如果二叉树为空,则返回,否则先访问根结点,然后先序遍历左子树,再先序遍历右子树;递归算法版本:// 根据定义很容易写出递归版本算法vector<int> preorderTraversal(TreeNode* root) { ve

2021-05-15 21:57:37 365

转载 MIT 6.S081 Lab: Xv6 and Unix utilities_xv6_2019

lab1 实验目的:熟悉xv6系统和它的系统调用一. 实验前准备按计划,先阅读下面三项介绍: https://pdos.csail.mit.edu/6.828/2019/lec/l-overview.txt大体意思是:6.S081专注于系统调用接口的设计和实现。我们将研究UNIX(Linux,Mac,POSIX和xv6)。让我们看看程序如何使用系统调用接口。例子: https://pdos.csail.mit.edu/6.828/2019/lec/l-overview/;实例

2021-04-21 15:15:38 493

原创 Lab2_Simple Shell_xv6_2019

Lab2: 实验目的:学习unix的shell如何使用系统调用一. 实验准备Your job is to write a simple shell for xv6. It should be able to run commands with arguments, handle input and output redirection, and set up two-element pipelines. Your shell should act like the xv6 shell sh for th

2021-03-09 14:59:34 433

原创 MIT 6.S081 Lab: Xv6 and Unix utilities

lab1 实验目的:熟悉xv6系统和它的系统调用一. 实验前准备按计划,先阅读下面三项介绍: https://pdos.csail.mit.edu/6.828/2019/lec/l-overview.txt大体意思是:6.S081专注于系统调用接口的设计和实现。我们将研究UNIX(Linux,Mac,POSIX和xv6)。让我们看看程序如何使用系统调用接口。例子: https://pdos.csail.mit.edu/6.828/2019/lec/l-overview/;实例

2021-02-27 08:19:32 1313 4

转载 Unicode中的数学符号

本文转自:http://www.dwenzhao.cn/lesson/htmluse/unicodemath.html 数学、物理及一些科技领域使用了很多特殊符号,Unicode码中都有对应的码位,列出其码表,以方便使用。 1. 数字符号Number Forms: Unicode 0 1 2 3 4 5 6 7 8 9

2021-01-21 11:19:06 4767

原创 函数指针在全局函数和在类内函数使用的区别

我们要做的是:将一个add函数作为另一个process函数的参数, 并在process函数里调用add;这个我们分别在全局函数中实现和在类中实现,看看两者有什么区别。函数指针先联想下,什么是函数指针和什么时候我们需要用到函数指针?我的第一反应,函数指针,就是指向函数的指针,类比int* p //p是指向int的指针,那么函数指针 它的类型是什么,它应该怎么定义;这时候我们想想什么时候用到函数指针,我的第一反应两个地方:a. dll 动态库加载的时候 b. 回调函数的时候函数指针 它的类型是什么,

2021-01-18 22:07:26 524

转载 unicode字符集详解,中文字符范围,标点符号范围等

经常要使用过滤中文,过滤标点符号之类的正则表达式,这里对查到的字符集返回做个汇总拉丁文字符0020-007E,包括常见的数字,英文a-z,A-Z, 一些标点符号,具体参考:https://www.runoob.com/charsets/ref-utf-basic-latin.html完整的CJK Unicode范围(5.0版)转自 https://blog.oasisfeng.com/2006/10/19/full-cjk-unicode-range/因为FontRouter新版本开发的需要,在

2021-01-18 14:15:36 5256

转载 unordered_map的哈希HASH重载——举例unordered_map与pair联合使用

有些时候,为了图省力,我们没准会这样的调用一个函数unordered_map< pair<int, int>, int > mp;但是很显然的是,这样的写法是会报错的,因为pair还没有HASH键值。error: call to implicitly-deleted default constructor of 'std::__1::hash<std::__1::pair<int, int> >' : _Hash() {}会返回这样

2020-11-21 00:13:41 637 1

原创 C#的using语句

C#’s using statement provides a syntactic shortcut for calling Dispose onobjects that implement IDisposable, using a try/finally block. For example:C#的using语句提供了调用Dispose on的语法快捷方式, 相当于使用try/finally块实现IDisposable的对象。例如:using (FileStream fs = new FileStr

2020-11-13 18:18:56 479

原创 ribbon的几种实现方式

office从2007开始菜单栏变成ribbon效果,引起较大的潮流,以致后面windows连文件夹布局都是ribbon效果;这边主要找了下ribbon的实现方式一些资料,收费的商业控件暂不考虑,主要看看开源的有没有好用的控件可以借鉴:基于wpf的版本微软官网的说明,在2010年给出了额外的vs安装包,安装后建立模板完成ribbon开发,但目前一直没有更新维护https://docs.microsoft.com/en-us/previous-versions/ff799534(v=vs.110)基于

2020-11-11 14:54:40 627

原创 C# 检测url的准确性

一个代码片段,检测url是否正常,通过Uri 类的构造函数进行,这里需要注意的是,.net4 和.net4.5的报错不一样;.net4 创建非法的url对象后并不直接报错,访问具体位置才会报错;。net4.5会直接报错;try{ string target = "mailto:jzhh@xju.%20edu.cn"; // 异常的url // string target = "https://www.baidu.com"; // 正常的url Uri uri = new Uri(

2020-09-16 16:30:52 1339

转载 C#线程间操作无效: 从不是创建控件XX的线程访问它

前些天做的要使用到线程的项目,现在和大家分享一下感受!以下面小列子为例,给出这个问题的解决办法。下面的列子是以一个计数器为列讲解的。public Form1(){ InitializeComponent();}private void btnStart_Click(object sender, EventArgs e){ // 创建线程 Thread newThread = new Thread(new ThreadStart(Count)); newThread.Start();

2020-06-15 15:18:22 329

转载 15_3Sum 求三数之和

求三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[[-1, 0, 1],[-1, -1, 2]]解题思路:如果是数组是有序的,则可以用双指针以线性时间复杂度来遍历所有满足题意得两个数组合;现对原数组进行排序 sort(num.

2020-06-12 13:44:29 183

原创 riscv-gnu-toolchain 下载编译 及 xv6 os编译试运行

这篇文章对应MIT_OS 6.S081官方计划的工具准备篇https://pdos.csail.mit.edu/6.828/2019/tools.html,万事开头难,记录好搭环境的每一步下载riscv-gnu-toolchain安装virtualBox和unbuntu,我安装的是virtualBox 6.0.10, unbuntu 是14.04 版本下载一些安装包进行工具链的编译:$ sudo apt-get install autoconf automake autotools-dev

2020-06-07 01:30:52 1183

转载 10_Regular Expression Matching 动态规划之正则表达

动态规划之正则表达本文转载于:https://github.com/labuladong/fucking-algorithm/blob/master/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E7%B3%BB%E5%88%97/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E4%B9%8B%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE.md自己加了C++部分的代码,还有些个人注释;正则表达式匹配是一个很精妙的算法,而

2020-06-06 16:04:12 352

原创 c++ foreach 用法,无法修改循环变量的内容

c++ foreach 用法,无法修改循环变量的内容// colomn resize后不会保存,循环执行完毕后mem[i]的size仍为0for (vector<bool> colomn : mem){ colomn.resize(n + 1); for (bool flag : colomn) { flag = false; }}// 这个才能mem[i] resize才能正常for (int i = 0; i < mem.size(); i++){ mem[

2020-06-01 09:10:47 751

转载 动态规划详解

动态规划动态规划问题的一般形式就是求最值。动态规划其实是运筹学的一种最优化方法,只不过在计算机问题上应用比较多,比如说让你求最长递增子序列呀,最小编辑距离呀等等。动态规划的穷举有特殊之处,这类问题存在[重叠子问题],如果包里穷举的话效率极其低下,所以需要[备忘录]或者[DP table]来优化穷举过程,避免不必要的计算。而且,动态规划问题一定会具备[最优子结构],才能通过子问题的最值得到原问题的最值;问题千变万化,穷举所有可行解并不是一件容易的事,只有列出正确的[状态转移方程]才能正确穷

2020-05-25 10:14:41 350

转载 python 安装requests库

import requests ModuleNotFoundError: No module named ‘requests’原因:没有导入requests库解决办法:开始菜单选择运行,输入cmd运行,然后cd命令进入到python安装目录下的Scripts文件中,然后输入pip install requests,等安装成功即可如果上面的还是不能解决你的问题,试试下面的办法吧,pip...

2020-04-23 16:13:03 375

原创 pugixml使用示例及注意点

一.简介pugixml的官方主页为:http://pugixml.org/pugixml个人觉得目前是C++处理xml里最方便,速度也最快的,在生成xml方面,300个xml文件,pugixml只用6s,对比rapidxml用时60+s,效率高了10倍,很nice;然后它的通用优点,列举下:它很轻量,只有三个文件(pugiconfig.hpp pugixml.cpp pugixml....

2020-04-20 09:42:03 1694

原创 rapidxml库生成xml小例子及需注意的问题

结论:rapidxml和pugixml在生成xml方面,我建议使用pugixml,优点很多,不用关心string的生命周期,像函数一样使用添加节点,属性,很方便;而且效率高,个人测试了下生成300个xml文件,pugixml用时6s,rapidxml用时60+s,效率差了10倍如果你工作必须使用rapidxml,或者先换起来麻烦,那么继续往下看,有关写xml需要注意的一些问题rapidxml ...

2020-04-18 19:12:39 815

原创 NSIS 打包记要

NSIS 网上介绍比较多,这里贴几个方向的链接,不再赘述;入门使用介绍的,推荐链接:https://www.cnblogs.com/zzllily/articles/5443850.html插件使用说明的,推荐链接:http://https://nsis.sourceforge.io/Builtin_NSISdl_plug-in内置函数多查用户手册SetDetailsPri...

2020-01-16 10:55:26 438

原创 C# 反编译修改dll文件

下面是修改IL文件然后重新生成DLL 的步骤,适用于dll文件没有源码,但是需要修改一点点的小改动问:为啥不直接用dnspy进行修改?答:我这边需要修改.net2.0上编译的一个库,用dnspy反编译后修改了代码,,运行反倒有问题,因此怀疑通过dnspy修改库最后的编译环境和原有库的编译环境不一致,考虑到dnspy自身需要.net4.0以上环境才能运行,所以这里采用修改IL文件的方法...

2020-01-08 08:51:26 2877

转载 C# 中的委托和事件(详解)

转自:https://www.cnblogs.com/SkySoot/archive/2012/04/05/2433639.htmlC# 中的委托和:事件委托和事件在 .NET Framework 中的应用非常广泛,然而,较好地理解委托和事件对很多接触 C# 时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里堵得慌,浑身不...

2019-11-25 09:12:17 229

原创 C# 检测进程是否存在

使用微软提供的handle.exe来进行检测文件被占用, 这里是要覆盖一个文件,所以覆盖前先检测这个文件有无进程占用,有的话就kill进程,然后删掉文件这个检测进程时间耗时比较长,测了下,有进程占用的话检测出来大概10s以上,所以不能每个文件都直接检测,先执行文件删除,有异常只能是文件被占用,再去执行解除占用;handle.exe的下载地址:https://docs.microsoft.com...

2019-09-04 09:56:28 4764

原创 class-04-2 了解函数调用关系

了解函数调用关系1. c函数调用的实现这一层的分析是在我们机器码这一级来分析的,也就是汇编语言这一级;先看几个函数调用过程涉及到的寄存器:(1)esp:栈指针寄存器(extended stack pointer),其内存放着一个指针,该指针永远指向系统栈最上面一个栈帧的栈顶。(2)ebp:基址指针寄存器(extended base pointer),其内存放着一个指针,该指针永远指向系统...

2019-08-31 09:38:47 386

原创 class-04-1 Lab1的实验过程

Lab 1的实验过程主要分为4个方面X86的启动顺序这里面涉及到当硬件一启动之后.怎么把操作系统放到内存中去运行C函数调用栈在操作系统里面有很多的C函数之间的调用以及C和汇编 函数之间的调用关系, 那么它在具体细节上面怎么来实现一个函数调用呢?需要我们去了解gcc内联汇编GCC是我们编译内核的一个编译器,它里面可以很方便的内联汇编,有了内联汇编之后我们可以在C语...

2019-08-31 09:33:59 196

原创 C# 写文件编码使用UTF-8无BOM和python读取json文件

用C#创建了一个json文件,发现同事用python无法读取python 版本 :2.7python读取json示例# -*- coding: utf-8 -*-import osimport jsonimport sysjsonPath="F:\\eng_哈哈哈.json"uipath = unicode(jsonPath , "utf8")fd = open(uipath,...

2019-08-28 09:17:26 637

转载 C#获取进程和线程的详细信息

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Diagnostics;public static void GetProcessInfomation() { Process pro = Process.G...

2019-08-23 15:12:12 4139 1

原创 126_Word Ladder ii

题目Given two words (beginWord and endWord), and a dictionary’s word list, find all shortest transformation sequence(s) from beginWord to endWord, such that:Only one letter can be changed at a timeEa...

2019-08-21 14:48:32 234

原创 124_Binary Tree Maximum Path Sum

题目Given a non-empty binary tree, find the maximum path sum.For this problem, a path is defined as any sequence of nodes from some starting node to any node in the tree along the parent-child connect...

2019-08-19 09:06:40 163

原创 127_Word Ladder

题目Given two words (beginWord and endWord), and a dictionary’s word list, find the length of shortest transformation sequence from beginWord to endWord, such that:Only one letter can be changed at a ...

2019-08-15 14:28:35 100

原创 129_sum root to leaf numbers

题目Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.An example is the root-to-leaf path 1->2->3 which represents the number 123.Find the tot...

2019-08-12 13:35:43 109

原创 132_Palindrome Partitioning ii

题目Given a string s, partition s such that every substring of the partition is a palindrome.Return the minimum cuts needed for a palindrome partitioning of s.Example:Input: “aab”Output: 1Exp...

2019-08-05 21:01:49 171

原创 131_Palindrome Partitioning

题目Given a string s, partition s such that every substring of the partition is a palindrome.Return all possible palindrome partitioning of s.Example:Input: “aab”Output:[[“aa”,“b”],[“a”,“a”...

2019-08-02 11:11:39 160

原创 lab0_准备知识

准备知识gdb 可以通过file指定加载符号链接, linux下有.pdb文件吗? 实际需要编一波,印象中qt出来的dll没有pdb文件(gdb) file [FilePath]用gdb查看源代码可以用list命令,但是这个不够灵活。可以使用"layout src"命令,或者按Ctrl-X再按A,就会出现一个窗口可以查看源代码。也可以用使用-tui参数,这样进入gdb里面后就能直接...

2019-07-28 13:43:32 318

原创 138_Copy List with Random Pointer

题目A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.Return a deep copy of the list.Example 1:Input:{“KaTeX parse ...

2019-07-23 18:41:09 114

原创 88_Merge Sorted Array

题目Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note:The number of elements initialized in nums1 and nums2 are m and n respectively.You may assume tha...

2019-07-23 18:39:08 107

原创 136_Single Number

题目Given a non-empty array of integers, every element appears twice except for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could you implement it with...

2019-07-23 14:55:13 100

原创 139_Word Break

题目Given a non-empty string s and a dictionary wordDict containing a list of non-empty words, determine if s can be segmented into a space-separated sequence of one or more dictionary words.Note:The...

2019-07-18 17:49:02 101

空空如也

空空如也

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

TA关注的人

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