自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis安装

1 Redis Windows安装Redis 官方不建议在 windows 下使用 Redis,所以官网没有 windows 版本可以下载。还好微软团队维护了开源的 windows 版本,虽然只有 3.2 版本,对于普通测试使用足够了。1.1 安装包方式安装 Redis 服务下载地址:Releases · microsoftarchive/redis · GitHub或者您也可以使用下面链接下载:https://github.com/rgl/redis/downloads点击下载后缀名为

2022-05-10 16:33:52 398

原创 从中序与后序遍历序列构造二叉树

106. 从中序与后序遍历序列构造二叉树注意:你可以假设树中没有重复的元素。例如,给出中序遍历 inorder = [9,3,15,20,7]后序遍历 postorder = [9,15,7,20,3]返回如下的二叉树: 3 / \ 9 20 / \ 15 7/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeN

2021-06-13 20:58:43 250

原创 105. 从前序与中序遍历序列构造二叉树

105. 从前序与中序遍历序列构造二叉树根据一棵树的前序遍历与中序遍历构造二叉树。例如,给出前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回如下的二叉树: 3 / \ 9 20 / \ 15 7/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeN

2021-06-13 20:05:54 300

原创 最长有效括号

最长有效括号给你一个只包含 ‘(’ 和 ‘)’ 的字符串,找出最长有效(格式正确且连续)括号子串的长度。示例 1:输入:s = “(()”输出:2解释:最长有效括号子串是 “()”示例 2:输入:s = “)()())”输出:4解释:最长有效括号子串是 “()()”示例 3:输入:s = “”输出:0 // 有效括号的最长长度 // 子串问题:严格以每个结尾计算个答案,最终答案必在其中 public static int longestValidParenthese

2021-06-13 19:58:15 237

原创 Redis面试题2

2.0 Redis主从复制?(1)什么是Redis主从复制?Redis主机数据更新后根据配置和策略,自动同步到从机的一种机制,Master以写为主,Slaver以读为主。(2)主从复制原理(流程)1)当从服务器连接上主服务器之后,从服务器向主服务器发送数据同步请求;2)主服务器接到从服务器的数据同步请求后,把主服务器数据进行持久化,将持久化的文件发送给从服务器,从服务器进行读取;3)以后每次主服务器进行写操作后,主服务器主动和从服务器进行数据同步。2.1 集群、分布式概念?(1)集群:同一

2021-05-14 14:45:33 96

原创 Redis面试题1

1.1 Redis的作用?(1)缓存:是实现分布式缓存的首选中间件;(2)数据库:实现诸如点赞、关注、排行等对性能要求极高的互联网需求;1.2 Redis和传统的关系型数据库的区别?(1)Redis1)Redis是一种基于键值对的NoSQL数据库;2)Redis的数据都存储在内存中,读写速度可达10万/秒;(2)关系型数据库1)关系型数据库是基于二维表来存储数据的,数据格式更为严谨,支持关系查询;2)数据存储在硬盘中,存储数据量大,但读写速度远不如Redis;1.3 Redis的数据类型

2021-05-14 14:31:37 136

原创 Java笔试---输入、输出问题

Java笔试—输入、输出问题1 输入输出问题java的oj输入注意点:https://www.nowcoder.com/discuss/8050import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextInt()) { //注意while处

2021-05-08 22:20:43 643

原创 Redis缓存穿透、击穿、雪崩

1、缓存穿透用户大量访问数据库中不存在的资源(数据),缓存中查询不到(redis命中率降低),直接访问数据库,从而压垮数据库。 比如用一个不存在的用户id获取用户信息,不论缓存还是数据库都没有,若黑客利用此漏洞进行攻击可能压垮数据库。解决方案:(1)对空值缓存:如果一个查询返回的数据为空(不管是数据是否不存在),我们仍然把这个空结果(null)进行缓存,设置空结果的过期时间会很短,最长不超过五分钟;(2)设置可访问的名单(白名单);(3)采用布隆过滤器;(4)进行实时监控;2、缓存击穿用户

2021-05-08 21:50:31 217

原创 LeetCode 1720. 解码异或后的数组

1、题目描述未知 整数数组 arr 由 n 个非负整数组成。经编码后变为长度为 n - 1 的另一个整数数组 encoded ,其中 encoded[i] = arr[i] XOR arr[i + 1] 。例如,arr = [1,0,2,1] 经编码后得到 encoded = [1,2,3] 。给你编码后的数组 encoded 和原数组 arr 的第一个元素 first(arr[0])。请解码返回原数组 arr 。可以证明答案存在并且是唯一的。链接:https://leetcode-cn.com/

2021-05-06 21:00:33 149

原创 快速排序

1、快速排序特点(1)时间复杂度:O(NlogN);(2)空间复杂度:O(logN);(3)稳定性:不稳定;2、快速排序步骤(1)在数组范围内,等概率随机选一个数作为划分值,然后把数组分为3部分:1)左边小于该选中的值;2)右边大于该选中的值;3)中间等于该选中的值;(2)对左侧和右侧范围,递归执行步骤(1);3、代码public class QuickSort { public static void quickSort(int[] arr) { if (ar

2021-05-04 10:01:03 717

原创 简单工厂模式

简单工厂1、简单工厂概述简单工厂属于创建型模式,提供一个工厂对象,根据传入工厂对象方法中的参数决定创建哪个对象实例。2、UML

2021-05-03 21:32:04 84

原创 单列设计模式

单列设计模式1、饿汉式public class Singleton { //饿汉式 //1. 提供类的全局静态变量 private static Singleton singleton=new Singleton(); //2. 私有化构造器 private Singleton(){} //3. 提供获取类的全局变量的静态方法 public static Singleton getSignleton(){ return s

2021-05-03 20:45:01 158

原创 UG 车刀类型

# UG 车刀类型## 1、UG刀具子类型(1)OD_80_L(2)OD_80_R(3)OD_55_L(4)OD_55_R(5)ID_80_L(6)ID_55_L(7)BACKBORE_55_L(8)OD_GROOVE_L(9)FACE_GROOVE_L(10)ID_GROOVE_L## 2、各编号含义(1)OD:外圆 (2)ID:內圆 (3)GROOVE:槽 (4)L:左手 (5)R:右手(6)数字:刀尖角度...

2021-03-19 19:30:43 3151 1

原创 UG中怎样删除已经选好的加工模板

1、进入零件加工模块2、点击菜单->工具->工序导航器->删除组装弹出以下对话框,点击确定

2020-10-05 21:32:52 10069

原创 Markdown基本语法

Markdown基本语法本文主要介绍了Markdown的基本使用语法,每一个使用语法的第一个代码段内为该语法的源代码格式,后面为该语法的实时显示效果。1、标题一级标题# 一级标题二级标题## 二级标题三级标题### 三级标题2、引用> 这是一段引用这是一段引用3、列表(1)有序列表把大象放进冰箱:1. 打开冰箱2. 把大象放进去3. 关上冰箱打开冰箱把大象放进去关上冰箱(2)无序列表* 阿斯蒂芬* 寒风呼呼阿斯蒂芬寒风呼呼(3

2020-09-29 09:26:50 125

原创 IDEA 使用File读取资源文件问题

1、当在IDEA中使用File 读取文件时,IDEA默认读取路径为当前module下的根目录:FileInputStream is = new FileInputStream(new File("LC.jpg"));

2020-09-13 19:52:21 1441

原创 解决IDEA中使用test测试时,在控制台无法输入问题

1、找到自己Idea安装目录下的bin文件夹下,找到vmoptions文件,64位电脑修改idea64exe.vmoptions,32位电脑修改ideaexe.vmoptions,打开,在最后添加以下文本:-Deditable.java.test.console=true2、打开IDEA软件,Help->Edit Custom...,添加以下文本:-Deditable.java.test.console=true...

2020-09-13 10:53:34 2412 6

原创 IDEA读取配置文件

1、在IDEA中,当使用以下代码读取配置文件时,无论配置文件放在哪个位置代码都找不到文件,最后发现,只要在当前的module下创建一个资源文件夹,将配置文件放入,即可解决以上问题。// 1.读取配置文件中的4个基本信息 InputStream is = ClassLoader.getSystemClassLoader().getResourceAsStream("jdbc.properties"); Properties pros = new Properties()

2020-09-11 21:08:49 4930 3

原创 使用画图软件更改图片大小

一、使用画图软件编辑打开后,点击属性按钮,编辑图片的像素大小,这种方法虽然能改变图片的大小,但是不能保证图片的完整性。1、选中图片文件,右键->编辑;2、文件->属性;3、二、使用画图软件编辑打开后,点击重新调整大小按钮,编辑图片的像素大小,这种方法既能改变图片大小,也可以保证图片的完整性,但是改变图片像素后,有可能会使图片失真。1、使用画图软件编辑打开后,点击重新调整大小按钮;2、点击像单选按钮,并取消“保持纵横比(M)”复选按钮;3、根据像素改

2020-06-23 20:27:59 4583

原创 PAT 乙级 1031 查验身份证 (15分)

1031查验身份证(15分)一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8...

2020-06-06 00:00:41 136

原创 PAT 乙级 1027 打印沙漏 (20分)

1027打印沙漏(20分)本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印***** *** * ********所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好...

2020-06-04 11:47:14 156

原创 PAT 乙级 1026 程序运行时间 (15分)

1026程序运行时间(15分)要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间。这个时间单位是 clock tick,即“时钟打点”。同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为...

2020-06-01 18:12:03 81

原创 PAT 乙级 1024 科学计数法 (20分)

1024科学计数法(20分)科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位,小数部分至少有 1 位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都...

2020-06-01 17:36:56 104

原创 PAT 乙级 1022 D进制的A+B (20分)

1022D进制的A+B(20分)输入两个非负 10 进制整数A和B(≤2​30​​−1),输出A+B的D(1<D≤10)进制数。输入格式:输入在一行中依次给出 3 个整数A、B和D。输出格式:输出A+B的D进制数。输入样例:123 456 8输出样例:1103将十进制...

2020-05-28 17:49:28 125

原创 C++ string类

c++提供了以下两种类型的字符串表示形式:(1)c风格字符串,使用字符数组char str[]来存放字符串;(2)c++ STL中的string类类型。如果要使用string,需要添加string头文件,即#include <string> (注意string.h和string是不一样的头文件)。 除此之外, 还需要在头文件下面加上一句: "usingn amespace std; "1. string的定义定义string的方式跟基本数据类型相同, 只需要在string后跟上变量名即

2020-05-27 16:46:46 881

原创 PAT乙级 1018 锤子剪刀布 (20分)

1018锤子剪刀布(20分)大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入格式:输入第 1 行给出正整数N(≤10​5​​),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势...

2020-05-26 17:47:04 100

原创 PAT乙级 1017 A除以B (20分)

1017A除以B(20分)本题要求计算A/B,其中A是不超过 1000 位的正整数,B是 1 位正整数。你需要输出商数Q和余数R,使得A=B×Q+R成立。输入格式:输入在一行中依次给出A和B,中间以 1 空格分隔。输出格式:在一行中依次输出Q和R,中间以 1 空格分隔。输入样例:1...

2020-05-24 17:26:57 175

原创 PAT乙级 1013 数素数 (20分)

1013数素数(20分)令P​i​​表示第i个素数。现任给两个正整数M≤N≤10​4​​,请输出P​M​​到P​N​​的所有素数。输入格式:输入在一行中给出M和N,其间以空格分隔。输出格式:输出从P​M​​到P​N​​的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。输入样例:...

2020-05-23 17:17:24 95

原创 UG二次开发-遍历输出打印所有程序组

在UG二次开发的cam模块下,通常需要打印出树结构下的全部名称,在这里给出打印程序视图下所有程序组名称(包括子级程序组名称)的代码。这里使用树的层次遍历算法,并将树的根设定为NC_pragram。UF_initialize(); //根 tag_t setup_tag=NULL_TAG; tag_t program_group=NULL_TAG; UF_SETUP_ask_setup (&setup_tag); //程序试图的根 UF_SETUP_ask_program_ro

2020-05-17 16:42:58 1632 5

原创 UG二次开发-文本操作函数

当需要对对话框、操作内容进行保存时,可以将其写入一个文本内,当再次需要时,只需打开读取即可。1、UC4504:打开文本文件UC4514:读取使用uc4504命令打开的文本中的一行。UC4524:向文本文件中写入一行文本。UC4540:关闭文本文件。文件打开模式要求。1:文件必须存在,且只读。2:文件必须不存在,文件创建后可用于读、写。3:文件创建后可用于读、写,...

2020-05-05 12:28:02 2563

原创 UG二次开发-程序视图根组

1、在UG的cam模块,工序导航器下有4个视图:程序视图、机床(刀具)视图、几何(坐标系)视图、方法视图,在创建加工工序时,需要选定工序位置,将工序放入对应的视图下,并继承相关属性。下面就简单对程序视图的根组举例说明:...

2020-04-24 18:20:30 2521

原创 UG二次开发-各种参数类型转换

1、NXString转换为string、const char*从字符串控件、枚举控件中获得的值大都是NXString类型://获取字符串控件的值NXString NX_str=string->ValueAsString();//NXString转换为string、const char*string str=NX_str.GetLocaleText();const ch...

2020-04-22 23:34:01 2379

原创 UG二次开发-枚举控件

1、向枚举控件中输入参数//设置整个枚举列表参数std::vector<NXString>millList;enum->SetEnumMembers(millList);//设置枚举控件的值,设置的值必须为列表中已经有的enum->SetValueAsString(millList[0]);2、获取枚举控件参数//获取当前枚举控件的列表std...

2020-04-22 21:58:52 1904

原创 C++ 全局变量

当一个工程下有两个不同模块之间存在参数交换是,可以通过使用全局变量实现,比如:模块1:h1.h、c1.cpp,模块2:h2.h、c2.cpp。当模块2中的参数数据 a2,b2,c2,需要传递至模块1的a1,b1,c1中时,可使用如下定义。1、操作//h1.h 的头文件#include<h2.h>//c1.cppvoid fun1(){ int a1...

2020-03-19 23:04:38 1925

原创 VS解决方案资源管理器中有多个项目如何设置单独启动

1、解决方案资源管理器->找到不需要启动的项目,右键->卸载项目2、解决方案资源管理器->找到需要设置单独启动的项目,右键->设为启动项目...

2019-10-06 19:56:45 1794

原创 如何在VS中移除项目

1、解决方案资源管理器->找到想要移除的项目,右键->移除->确定(只是在资源管理器中移除了项目,源文件并没有删除)

2019-10-06 19:51:46 9918

原创 如何在VS中添加多个项目

1、解决方案资源管理器->右键解决方案->添加->现有项目->找到要打开的文件,后缀名为.vcxproj2、解决方案资源管理器->空白处右键->添加->现有项目->找到要打开的文件,后缀名为.vcxproj...

2019-10-06 19:48:06 4509

原创 UG11经典工具条设置

1、UG11切换至经典界面,新增环境变量,变量名:UGII_DISPLAY_DEBUG,变量值:1。(1)我的电脑,右键属性(2)高级系统设置,高级,环境变量(3)系统环境变量,新建,变量名:UGII_DISPLAY_DEBUG,变量值:1(4)打开ug11,快捷键ctrl+2,用户界面首选项,布局,用户界面环境,经典工具条2、当切换至经典界面后,发现工具条太大...

2019-10-03 20:03:36 13699

原创 VS错误提示:C4996 解决方法

严重性代码说明项目文件行禁止显示状态 错误 C4996 'scanf': This function or variable may be unsafe. Consider us...使用<cstdio>头文件里的scanf出现错误:原因是Visual C++ 2013 使用了更加安全的 run-time library routines 。新的Security CRT func...

2019-10-02 19:37:55 25454 7

原创 PAT 1051 Pop Sequence

1051Pop Sequence(25分)Given a stack which can keepMnumbers at most. PushNnumbers in the order of 1, 2, 3, ...,Nand...

2019-09-22 23:07:31 177

空空如也

空空如也

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

TA关注的人

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