自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 操作系统理论课实验

运行环境为ubuntu20.04(只是本人实验环境,Linux系统装了基本的gcc应该都可以运行)进程的创建实验内容(参考fork函数详解)将下面的程序编译运行,并解释现象。#include <sys/types.h>#include <stdio.h>#include <unistd.h> int main() { int pid1 = fork(); printf("**1**\n"); int pid2 = fork(); prin.

2020-08-30 08:09:57 509

原创 小程序如何读取本地txt、json等文件的数据(避免乱码)

实现思路选择文件将文件上传到云存储通过downloadFile获得文件路径tempFilePath调用readFileSync根据步骤2的tempFilePath读取文件(不直接读取本地文件是因为微信小程序只能在特定目录下读取本地文件,且考虑到小程序的通用性)1. 选择文件wx.chooseMessageFilewx.chooseMessageFile({ count: 1, type: 'all', success(res) { console.log("选择文件成.

2020-08-17 08:53:01 6204 5

原创 微信小程序js端for循环中调用云函数的同步问题

问题来源微信小程序中for循环调用云函数从数据库中获取对应数据,由于云函数调用是异步的(在js中的for循环内部还可以顺序执行,在云函数中调用云函数就必须await了),for循环的云函数调用还没执行完就执行for循环之后的内容// batchIds中存放选中的ID,然后根据ID获取报名信息let that = thislet arr = []for (let i = 0; i < that.data.batchIds.length; ++i) { wx.cloud.callFunct

2020-08-16 22:29:09 3624 5

原创 微信小程序从云数据库中下载文件重命名并保存到手机

下载wx.cloud.downloadFile保存并重命名wx.getFileSystemManager().saveFile,此时保存到微信固定的文件夹,手机端很不友好,这一步骤重点是利用filePath重命名如下filePath: wx.env.USER_DATA_PATH + "/" + '保存文件的名字' + '.保存文件的格式',wx.getFileSystemManager().saveFile({ tempFilePath: sres.tempFilePath, // 传入一个本地.

2020-08-07 22:48:37 3107

原创 微信小程序order by不能按中文排序问题

问题来源做一个报名查询系统,想要按照城市、学校的双重排序导出报名表cloud.database().collection("signUpList").orderBy('city', 'desc').orderBy('school', 'desc').get()发现中文不能按照拼音顺序排序,如曹操在宝贝之前原因查询到如下解决方法,微信小程序用的数据库是MySQL,默认编码为UTF-8。解决方法微信小程序中实现UTF-8转为GBK然后发现只能在js中引入实现的方法,不能在云函数中引用,于是从

2020-08-07 21:57:22 1840

原创 算法课知识点总结

Course ProgressIntroductionData structures, NP-completenessGreedy algorithmsDivide-and-conquerDynamic programmingGraph algorithmsSearch algorithmsHeuristic algorithmsNetwork flowschapter1-Introduction时空复杂度算法必须满足下列条件Input(输入)Output(输出.

2020-07-25 10:37:40 1371

原创 plpgsql函数入门

plpgsql是postgresql自带的语言,基本结构教程。由于是入门教程所以在略看上述教程(只需看41.1综述-41.6控制结构即可,包括41.6,因为要用到条件和循环结构)之后可直接看下面5道题目及答案,有一定编程基础的同学应该看了就会编写一个函数,函数名为get_rand_phone_num,无接收参数,返回一个随机的电话号码,长度11位,电话号码以’132’或 '137’或 '189’或'135’开头,要求任意满足该要求的电话号码能等概率生成。//1.随机phoneCREATE .

2020-07-20 15:05:25 1509 1

原创 bat批量重命名文件

::后面的为注释,若执行时出错可以试着将::注释内容删除直接上两个例子(注意程序中的符号全部为英文符号)将所有所在文件夹下的所有.txt文件改为a.jpg(a为递增变量)@echo off ::取消回显set a=1 ::设置变量setlocal EnableDelayedExpansion ::延迟变量for %%n in (*.txt) do ( ::*为通配符,(*.txt)即所有.txt文件集合 ren "%%n" "!a!.jpg" :.

2020-07-06 16:30:49 7809 5

原创 bat脚本一键启动多个程序(打开多个文件)

作为学校多媒体岗位的一位助理,日常检查电脑时需要同时打开多个软件进行测试,为了提高效率,写了如下一键启动的bat脚本@ECHO OFFtitle "打开当前目录下的ppt.pptx、excel.xlsx、word.docx文件"start /min "" "ppt.pptx"start /min "" "excel.xlsx"start /min "" "word.docx"当然,还可以引入绝对路径,打开对应网站start /min "" "E:\MyApp\Google\Chrome.

2020-06-30 15:33:45 11204

原创 一个操作系统的实现(五)

对应原书第六章,与原书步骤大致相同(注意部分代码及代码解释在原书中有所以没有贴出,本系列博客需结合原书食用)与之前实验过程相同,生成kernel.bin后挂载到a.img(相较于第五章代码多了kernel/main.c、include/proc.h、include/sconst.inc),由于第五章最后讲过makefile了,之后的实验不再一步步展示编译链接挂载过程(有特殊情况会说明),直接执行make命令即可。make出现不兼容错误是因为没有把64位转为32位,需要在对应FLAGS后加对应转32位.

2020-06-15 15:51:49 787 1

原创 Dijkstra、Floyd、Kruskal、Prime算法

Dijkstra、Floyd、Kruskal、Prime算法是图论中四个比较基础的算法,刚入门时较容易混淆,故总结如下(本文只是对比总结,具体示例代码引自其他博客)带权图分为有向和无向,无向图的最短路径又叫做最小生成树,有prime算法和kruskal算法;有向图的最短路径算法有dijkstra算法和floyd算法。适用场景Dijkstra:单源最短路,求给定起点到所有其他点的最短路径。采用的是贪心的思想,路径不能有负权(带负权用Bellman-Ford算法)Floyd:多源最短路径(即任意两.

2020-06-07 18:15:13 626

原创 贪心、分治和动规

贪心、分治和动规是算法的入门思想,初学时容易混淆,故对比总结如下两个概念重叠子问题:如果一个问题可以被分为若干个子问题,且这些子问题会重复出现,那么就称这个问题拥有重叠子问题最优子结构:如果一个问题的最优解可以由其子问题的最优解有效地构造出来,那么称这个问题拥有最优子结构三个思想贪心:解决最优化问题,并希望由局部最优策略来推得全局最优结果。贪心算法适用的问题必须满足最优子结构分治:将原问题划分成若干个规模较小而结构与原问题相同或相似的子问题,然后分别解决这些子问题,最后合并子问题的解,.

2020-06-07 16:35:51 312

原创 hexo博客yilia主题添加复制代码块功能

博客中的复制代码块功能还是挺实用的,本文参考自 这个博客,感谢并膜拜这位大佬,该博客应该是yilia主题添加复制代码块功能的首创,详细记录了整个过程,看起来比较繁琐(无贬义),所以我单独整理一份最终版在themes\yilia\source中新建js文件夹,在该文件夹中新建clipboard_use.js如下:$(".highlight").wrap("<div class='code-wrapper' style='position:relative'></div>").

2020-06-06 23:50:26 627 1

原创 一个操作系统的实现(四)

对应原书第五章,与原书步骤大致相同(注意部分代码及代码解释在原书中有所以没有贴出,本系列博客需结合原书食用)这一篇中编译链接时需要注意将默认64位改为32位,与原书有略微不同,具体见下编译代码实验1:汇编版Hello World// 生成hello.onasm -f elf hello.asm -o hello.o// 生成hello,注意转成32位,与原书不同// 原书:ld -s hello.o -o hellold -m elf_i386 -s hello.o -o hello执行.

2020-06-06 21:31:22 768

原创 高效地在github搜索开源项目

参考与B站羊哥教程-如何高效地在github搜索开源项目,鉴于不经常用容易忘,重新再看一遍视频有点麻烦,所以整理如下1. 限制搜索范围在name里面搜索(name即仓库名)加前缀in:name,如搜索仓库名中含有spring boot的项目in:name spring boot在description里面搜索加前缀in:description,如搜索仓库描述中含有spring boot的项目in:description spring boot(红框部分即为一个仓库的descrip.

2020-06-02 22:53:53 215

原创 一个操作系统的实现(三)

对应原书第四章,与原书步骤大致相同(注意部分代码及代码解释在原书中有所以没有贴出,本系列博客需结合原书食用)1.加载最简单的loader,与一个操作系统的实验(二)步骤基本相同# 编译nasm loader.asm -o loader.com# 复制pmtest2.com到pm.img(这个pm.img用的是chapter3/i中的pm.img)sudo mount -o loop pm.img /mnt/floppysudo cp loader.com /mnt/floppysudo u.

2020-05-31 14:09:58 828

原创 一个操作系统的实现(二)

对应原书第三章,与原书步骤大致相同阅读chpter3/a/pmtest1.asm,源码如下:==========================================pmtest1.asm编译方法:nasm pmtest1.asm -o pmtest1.bin==========================================%include "pm.inc" ; 常量,宏,以及一些说明org 07c00h jmp LABEL_BEGIN[SE.

2020-05-24 22:06:12 974 1

原创 一个操作系统的实现(一)

在学操作系统,老师教的是清华的moocos操作系统,是根据一些基础代码填空式学习,个人不太习惯,故开始了自己探索的历程,也就有了这一系列博客(不定期更新)一个操作系统的实现系列是按照Orange’S:一个操作系统的实现这本书一步步做的,这是案例1(所有案例基于linux系统,下面会有在虚拟机安装ubuntu教程)在清华镜像下载ubuntu的镜像(我用的是最新版20.04)在virtualBox安装ubuntu(虽然版本不同,但是操作基本一致)然后再u’bu’nubun...

2020-05-19 14:38:27 2929 1

原创 搭建hexo-yilia主题个人博客(二)

添加实用功能效果如下图:1.归档功能修改themes/yilia/_config.yml(第3-6行左右)menu: 主页: / 归档: /archives/index.html2.文章显示摘要文章默认全文显示,不美观也不方便查找。只要在MD博客文件的正文前插入<!-- more -->即可自动断开,只显示<!-- more -->之前内容作为摘要。...

2020-04-29 21:24:10 251 1

原创 搭建hexo-yilia主题个人博客(一)

步骤1:搭建hexo个人博客并更换成一个流行的主题步骤2:设置hexo背景(参考博客)效果如下图:0:将压缩的css格式化下载好的主题yilia\source\main.0cf68a.css文件是经过压缩的,(不是给人看的,乍一看还以为是乱码),为了下面步骤修改方便,先在这个网站的css工具中把代码拷贝进去美化一下1:去除头像上半部分的背景在文件yilia/layout/_parti...

2020-04-29 11:26:26 504

原创 Java Swing中JScrollPanel包含的JTable不显示底部滚动条

如题,不显示滚动条是因为JTable会自动调整列宽只需要设置tempJTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);把JTable的自动调整列宽关掉即可附上单独设置每列列宽的方法...

2020-04-16 23:09:50 601

原创 python用opencv写的人脸检测(并非人脸识别)

B站教程github源码据说github上的源码能直接跑但是我复制到VSCode上时出了几个bug,下面说一下解决方法:第一个是相对路径问题,不知道为什么VSCode用相对路径经常出问题(按照网上搜的配置也没有),如果没用就老老实实改成绝对路径吧出现“!empty() in function 'cv::CascadeClassifier::detectMultiScale’”这个问题,...

2020-04-03 15:02:52 260

原创 真正解决VSCode运行时自动保存问题

VSCode运行时自动保存问题用过了eclipse后面用VSCode总是忘记运行时保存一下,感觉ctrl+s操作非常多余(但是在编辑word文档之类的还是要习惯性保存一下),下面介绍一下怎样真正解决VSCode运行时保存问题文件->首选项->设置->搜索auto save四个选项分别是off: 关闭自动保存afterDelay: XX毫秒后自动保存,这个就是我所讲的...

2020-04-02 21:30:00 30101 7

原创 算法时间复杂度符号分析(O、o、Ω、ω、Θ)

Θ – 等于f(n)=Θ(g(n))f(n) = Θ(g(n))f(n)=Θ(g(n)) 即 f(n)=g(n)f(n) = g(n)f(n)=g(n)Ο – 小于等于(常用于计算最坏情况,作为时间复杂度上界)f(n)=O(g(n))f(n) = Ο(g(n))f(n)=O(g(n)) 即 f(n)≤g(n)f(n) ≤ g(n)f(n)≤g(n)ο – 小于f(n)=ο(g...

2020-03-31 19:58:55 9987 1

原创 Java、Python不用numpy实现csv和二维数组之间的相互转换

javaCSV转为二维数组在这里插入代码片

2020-03-31 10:39:09 639

原创 java读取json文件全流程(包含下载包和导入包)

本文教程使用fastjson处理json文件,其他的包可以自行百度下载fastjson包(其他的包也在该网站搜索下载)eclipse导入包注意要导入到Classpath,否则会出现java.lang.NoClassDefFoundError错误json文件读取为stringpublic String JsonToString() { // 读取JSON数据到 jsonStr...

2020-03-30 22:28:08 1198

原创 Java、Python小游戏合集

源码及图片素材合集包括:飞机大战、经典斗兽棋(有过河的那种)、五子棋、俄罗斯方块、国际象棋、吃豆人、推箱子(只有5关)、扫雷、贪吃蛇、坦克大战、2048等11个小游戏主要规则在上面的源码网址中都有讲解,下面直接上图1. 飞机大战2. 经典斗兽棋3. 五子棋(双人对战,非人机)4. 俄罗斯方块5. 国际象棋6. 吃豆人7. 推箱子8. 扫雷9. 贪吃蛇10....

2020-03-26 22:44:02 2169 2

原创 virtualBox虚拟机实现ubuntu双向复制

看了几个教程都不够全面,这里综合一下,按照以下三个步骤完成能保证实现主机到虚拟机+虚拟机到主机的双向粘贴复制1.在VirtualBox管理器选中虚拟机jian中勾→设置→常规→高级→选“双向“2.在VirtualBox管理器选中虚拟机jian中勾→设置→存储→勾选“使用主机输入输出(I/O)缓存”选项 和 “.dvi”→勾选“固态驱动器(S)”选项(按照下面两个图勾选,需要关掉正在运行的虚拟...

2020-03-18 22:47:44 2977 1

原创 学习过程中有用的教程

virtualBox安装ubuntuLinux虚拟机上安装jdk

2020-03-18 22:05:58 310

原创 AT&T汇编实现冒泡循环(含输出)

.section .datavalues: .int 20, 22, 14, 15, 17, 10length: .int 6outputraw: .asciz "The raw values are: "output: .asciz "The sorted values are: "outputvalues: .asciz "%d %d %d %d %d %d\n".se...

2020-03-15 21:28:23 331

原创 关系代数运算之笛卡尔积、等值连接、自然连接、内连接的区别

1. 笛卡尔积对两个关系R和S进行操作,产生的关系中元组个数为两个关系中元组个数之积。2. 等值联接在笛卡尔积的结果上再进行选择操作,挑选关系第i个分量与第(r+j)个分量值相等的元组3. 自然连接在等值联接(以公共属性值相等为条件)的基础上再行投影操作,去掉S中的公共属性列,当两个关系没有公共属性时,自然连接就转化成笛卡尔积直接上图Student表:Score表:1. 笛卡...

2020-03-15 10:48:10 17118 2

原创 关系代数习题及答案

关系代数运算是数据库的基础,首先提供一个神仙网站:关系代数,这个网站同时提供关系代数查询和SQL语句查询,可以检查关系代数的正确性,以及把SQL语句转为关系代数运算式。网站还有使用教程,简直不能太贴心!但是他不支持的部分SQL语句,这些都在help中有详细说明。help中说该网站支持Count等集合查询,但我至今没搞懂使用方法。。。我知道后会更新,如果有小伙伴知道欢迎留言!进入正题首先...

2020-03-15 10:30:36 27299 11

原创 B站自学课程(不定时更新)

B站自学课程(不定时更新)兴趣LatexLatex是写论文神器,这个教程是分开放的,这个链接是第一集,在"相关推荐"里能找到后面的所有教程微信小程序有实战项目,这个UP主还有其他几个微信小程序相关教程,能学到不少东西,看完后能自己写出使用了百度翻译API的翻译小程序。自学项目源码-我的小程序python小游戏这个UP主有贪吃蛇、太空侵略者等多款小游戏,且教程清晰,能在1h左右轻松完...

2020-03-13 09:56:35 691

原创 Linux编译运行AT&T汇编、C、C++、教程

写在前面:这篇文章主要是介绍Linux的命令行过程,对命令行原理和代码原理没有作解释一.准备工作:1.安装gcc打开终端(快捷键Ctrl+Alt+T)并输入 “sudo apt-get install gcc”安装完成后输入 “gcc -v” 查看是否安装成功PS:安装了gcc后g++自动能用2.vim编辑器的使用入门打开vim编辑器按 “a", 显示 ”INSERT“ 后...

2020-03-11 21:34:05 693

原创 Markdown排版命令

Markdown排版命令Markdown是一款功能强大的编辑排版工具,很多地方都有用到。比如编写CSDN博客、简书、github文档Markdown常用排版命令菜鸟教程Markdown字体...

2020-03-11 15:53:54 985

原创 Linux小白常用命令行+快捷键(不定时更新)

第一次入手Linux,在使用过程中常用的命令行+快捷键1.命令行cd + 文件夹名:切换当前目录touch + 文件名:创建文件rm + 文件名:删除文件mkdir + 文件夹名:创建文件夹rmdir + 文件夹名:删除空文件夹rm -rf + 文件夹名:删除文件夹(空或非空)sudo apt-get install + 包名:安装包sudo apt-get remove + ...

2020-03-11 15:31:56 917

原创 在DevC++中使用C++11

C++11有很多实用的新特性(详情见:C++11特性),那么如何在DevC++中使用这些新特性呢1.点击Tools(工具)找到Compiler Options(编译选项)2.在下图位置添加 “-std=c++11” (不含引号),并勾选红框中的选项3.完成后如下图,点击OK即可...

2020-03-11 14:58:27 4451

空空如也

空空如也

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

TA关注的人

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