算法基础
算法可视化:数据结构和算法动态可视化 (Chinese) - VisuAlgo
Data Structure Visualization (usfca.edu)
数据结构和算法:(图文解析)Hello 算法 (hello-algo.com) (github项目源码地址:krahets/hello-algo: 《Hello 算法》:动画图解、一键运行的数据结构与算法教程,支持 Java, C++, Python, Go, JS, TS, C#, Swift, Rust, Dart, Zig 等语言。 (github.com))
c++中没有split库函数,我们可以自己封装一个这里我们会用到一个c++的库函数strtok()
函数原型
char * strtok(char *s, const char *delim)
函数功能
分解字符串为一组字符串, s为要分解的字符串,delim为分隔字符串
描述
strtok()用来将字符串分隔成一个个小片段,参数s指向将要被分隔的字符串,参数delim则为分隔字符串,当strtok()在参数s的字符串中发现到参数delim的分隔符 ...
git基本使用
初次使时的全局设置:git config –global user.name ‘新用户名’
git config –global user.email ‘新邮箱地址’
git config –global –list(此代码可以显示出当前的”用户名“和”邮箱地址“)
初始化仓库:git init
把本地文件放到暂存区:git add .(点表示所有的文件)
把本地文件放到本地仓库里面:git commit -m ‘提交~~~网站’
链接远程仓库:git remote add origin 仓库地址(error:remote origin already exists.已经链接到了远程仓库,跳过此步即可)
把本地仓库的文件推送到远程仓库 push:git push -u origin master(出现错误的主要原因是gitee(github)中的README.md文件不在本地代码目录中此时我们要执行git pull –rebase origin master命令README.md拉到本地,然后执行git push origin master)
码云部署发布静态网站:
(1)在当前仓库中 ...
hexo个人博客搭建
hexo个人博客搭建前提:已安装node.js+git+npm,有gitee/github账号且有自己的公开的仓库
1、npm install -g cnpm –registry=https://registry.npm.taobao.org (可不执行此步骤。作用:改为淘宝镜像,加快npm下载速度)
2、npm install hexo-cli -g (安装hexo脚手架,即安装hexo)
3、hexo init blog (通过hexo生成博客项目文件夹。此步骤可以不执行,可以自己在某个位置创建一个空文件夹,在空文件夹目录下打开cmd/git bash执行:hexo init)
4、cd blog (此步骤可以不执行 。在自己创建的博客项目文件夹的目录下打开cmd终端或git bash)
5、hexo server (在本地运行博客项目,自动打开一个服务器。可以通过在浏览器中输入终端生成的地址访问自己的博客项目)
6、npm install hexo-deployer-git –save (注意:要在博客项目文件夹中打开cmd终端或git bash执行该命令。此步骤如果未执行,将无 ...
微信小程序
设置代理
当我们在自己的电脑上配置了其他代理的时候就会影响到微信开发者工具的使用。所以我们可以将微信开发者工具的代理模式修改为不使用任何代理,勾选后直连网络
创建小程序项目
此步骤不做过多赘述,要注意的就是从官网上找到自己的AppID,然后将自己的AppID填入到对应的位置。
项目结构1、pages:用来存放所有小程序的页面
2、utils:用来存放工具性质的模块(例如:格式化时间的自定义模块)
3、app.js:小程序项目的入口文件
4、app.json:小程序项目的全局配置文件
5、app.wxss:小程序项目的全局样式文件
6、project.config.json:项目的配置文件
7、sitemap.json:用来配置小程序及其页面是否允许被微信索引
sitemap.json:
1234567{ "desc": "关于本文件的更多信息,请参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/sitemap.html", "rule ...
node.js基础
Node.js简介Node.js是一个基于Chrome V8引擎 的JavaScript运行环境;
其中V8引擎负责解析和执行JS代码
Node.js的安装官网地址:Node.js (nodejs.org)
LST为长期稳定版,对于追求稳定性的企业级项目来说,推荐安装LTS版本的Node.js
Current为新特性尝鲜版,存在隐藏的Bug或安全漏洞。
查看已安装的Node.js的版本号打开终端,在终端输入命令 node -v
在Node.js环境中执行JavaScript代码1、切换到JS文件说在目录中
2、打开终端
3、输入 node 文件名,即可执行相应JS文件
解决文件修改后无法保存的问题1、如果文件修改后无法保存,需通过管理员身份打开powershell通过nodepad+文件名打开
2、右键文件、打开属性、修改权限
API文档的编写ShowDoc
实例:导航–ShowDoc
fs文件系统模块fs.readFile()读取指定文件中的内容+fs.writeFile()向指定文件中写入内容123456789101112131415161718192021222324252627 ...
Vue2+Vue3基础
Vue简介vue官网地址:Vue.js - 渐进式 JavaScript 框架 | Vue.js (vuejs.org)
vue是一套用于构建用户界面的渐进式JavaScript框架
渐进式:Vue可以自底向上逐层的应用
简单应用:只需要一个轻量小巧的核心库
复杂应用:可以引入各式各样的Vue插件
Vue的特点1、采用组件化的模式,提高代码复用率且让代码更加好维护
2、声明式编码,让编码人员无需直接操作DOM,提高开发效率
3、使用虚拟DOM+优秀的Diff算法,尽量复用DOM结点
Vue数据绑定单向绑定:v-bind: 数据只能从data流向页面
简写形式: v-bind:value 可简写为 :value
双向绑定:v-model: 数据不仅能从data流向页面,还可以从页面流向data。
注意:
1、双向绑定一般都应用在表单类元素上(如:input、select等)
2、v-model:value 可以简写为 v-model,因为v-model默认收集的就是value值。
el与data的两种写法el:第一种写法:
123new Vue({ el: ...
云服务器的购买和使用
云服务器(linux)的购买和使用一、在对应的Linux环境下要安装相应的JDK(版本不能低于windows下springboot程序中所用到的版本)和MySQL数据库(其他数据库也可)
具体操作:
1、购买一台云服务器(以 华为云服务器 为例)
2、登录进入华为云之后,会出现如下界面,点击右上角的控制台。
3、进入控制台之后的界面如下,找到如下图标注位置,然后点击进入
4、进入之后出现如下界面,点击下图标注位置
5、进入之后出现如下界面,弹性公网IP为访问服务器的IP地址
6、点击安全组开放一些端口(数据库默认端口:3306,HTTP:80,HTTP_ALT:8080,HTTPS:443,SSH:22)在选择开放端口的时候首先检查如上端口是否已经开放,没开放的端口给它开放即可
7、下载Xshell(连接服务器后就相当于Linux上的终端)和Xftp(连接服务器后可以从windows向服务器上传文件)
8、安装MySQL,第一步cd ~在/root目录下面下载并安装MySQL官方的Yum Repository
wget -i -c http://dev.mys ...
前端小案例
1、价格变动标签示例图片:结构代码:123456<div class="price"> <span class="now">¥1650 <i></i> </span> <span class="origin">¥5650</span></div>
样式代码:12345678910111213141516171819202122232425.price { width: 161px; height: 24px; border: 1px solid red; line-height: 24px;}.now { position: relative; float: left; width: 90px; height: 100%; background-color: red; text-align: cente ...
HTML5+CSS3+JS基础
鼠标样式
属性
cursor
值:default
默认的小白鼠标样式
值:pointer
鼠标小手样式
值:move
鼠标移动样式
值:text
鼠标文本样式
值:not-allowed
鼠标禁止样式
取消表单轮廓+防止拖拽文本域取消表单轮廓input和textarea输入框,当点击后会出现默认的边框,
1outline: none;/*可以取消这个默认的边框*/
防止拖拽文本域textarea输入框默认是可以手动变大变小的,
1resize: none;/*可以禁止用户拖拽文本域*/
去掉图片底部默认的空白缝隙img标签放入的图片,在图片的底部存在默认的空白缝隙,
1vertical-align: top/middle/bottom;/*或*/display: block;/*可以去掉这个默认的空白缝隙*/
flex布局(自适应,常用于移动端布局)
注意:flex布局中,默认的子元素是不换行的,如果装不开,会缩小子元素的宽度,放到父元素里面
布局原理
flex是flexible Box的缩写,意为“弹性布局”,用来为盒装模型提供最大的灵活性,任何 ...