自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Python Exception: read bad escape \h at ......

将import re替换为import regex as re即可

2023-02-06 14:08:31 193

原创 Tkinter:ListBox之选择多个文件

Tkinter:ListBox之选择多个文件Tkinter:ListBox之选择多个文件TkinterListBox文件名大写工具界面展示代码示例导出导入Tkinter:ListBox之选择多个文件工作之中的程序猿经常会量产出很多功能代码,虽然这些代码对于程序员来讲通熟易懂,但是对于QA或者策划人员来讲就有可能很难理解,这时候我们就需要让代码图形化,方便让非程序人员理解,本教程便如此应运而生。本教程将略微讲解python易上手的Tkinter图形化编程,将冗余的功能化代码转换为生动形象的GUI工具。。

2021-10-19 22:14:02 1255

原创 visio2013 首要事项后闪退

使用 win + r 打开运行,输入visio后打开visio,重新选择首要事项后即可正常运行!

2021-02-03 14:54:39 25297 7

原创 DirectX11 With Windows SDK -- 07 练习题

1. 尝试修改本章Demo的光照,让方向光只射出红光,点光灯只射出绿光,聚光灯只射出蓝光。这里只需要修改在GameApp.cpp里面的InitResources函数里的初始化默认光照的颜色即可: // 初始化默认光照 // 方向光 m_DirLight.ambient = XMFLOAT4(1.0f, 0.0f, 0.0f, 1.0f); m_DirLight.diffuse = XMFLOAT4(1.0f, 0.0f, 0.0f, 1.0f); m_DirLight.specular = XM

2021-01-14 22:14:32 273 1

原创 D3D11_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP

D3D三角形带说明在使用三角形带去绘制其他几何物体时,我们能够节约复用已有的节点,节约内存,但是关于三角形带复用节点的顺序我们得牢记于心,如下图所示,这样才能生成目标几何物体。系统使用顶点v1,v2和v3绘制第一个三角形。v2,v4和v3绘制第二个三角形;v3,v4和v5绘制第三个;v4,v6和v5绘制第四个;后面均类似。这也就是说,我们在用三角形带绘制其他物体时,需要注意顶点矩阵里存储顺序,使生成得到所有三角形满足默认得顺时针顺序(D3D默认顺时针为朝向摄像机的一面),这样才能在屏幕上显示所有的三

2021-01-10 15:36:35 759

原创 W10打开bat文件一闪就没了

W10打开bat文件一闪就没通常bat文件默认是出现故障或者正常运行时都会自动关闭运行时窗口,当然,一闪而过很显然属于异常情况,所以我们只需要想办法查看错误,针对错误解决即可。1.使用Notepad++编辑bat文件,在文件末尾加上pause这样做的好处是我们能够让运行时窗一直显示,这样错误日志就会显示在我们眼前,如下所示2.查看窗口提示错误,对症下药常见错误一般分为以下几种:a) 安装文件路径找不到安装路径找不到,很大程度上是由于对应安装路径中某个路径名不符合命名规则,如下:一般路径命

2020-12-21 15:00:58 12111 1

原创 Python: Range 和 *

列表生成:Range 和 *Range生成的列表,列表中的元素相互独立,即地址各不相同,这与 * 号重复列表生成的列表大相径庭,前者类似深拷贝,后者则纯粹是浅拷贝,如下所示:a = [0] * 3print u'这是浅拷贝'for num in a: print id(num)b = range(3)print u'这是深拷贝'for num in b: print id(num)结果如下:这是浅拷贝548135685481356854813568这是深拷贝548

2020-12-18 19:58:05 898 1

原创 Python:* 与列表的爱恨情愁

这样创建二维数组:f = [[0] * n] * m,发生了什么?最近初学Python2.7,在列表一节发现了 * 号可以重复列表,例如下面代码所示:于是我想着倘若被重复列表元素变多,能否产生出所谓的二维数组:结果明显与我思考的不一样,但也指出了 * 号重复列表时,是重复列表里面的所有元素,也就是说如果我想得到一个二维列表,即如果我想重复列表,那么列表元素本身也应为列表,代码如下:果然如我所料,有了这个方法,就可以简单的获得二维数组,不过当我应用于刷题时,却发现每次得到的结果与我心中所想大相径

2020-12-18 16:32:34 171 1

原创 为什么需要基类指针指向派生类对象?

为什么需要基类指针指向派生类对象?我们知道虚函数可以让我们的类具备多态的功能,你肯定在此会有所疑惑,为什么需要基类指针指向派生类对象?派生类指针自己就能实现的功能,何必用基类指针来多此一举呢?其实这就不得不谈及多态的奥妙了。假设我们有这样一群动物,鸟类,爬虫类,人类以及鱼类。现在我们想要分别实现每一类动物“走”这一概念,...

2020-09-04 15:33:46 1566 2

原创 58同城笔试:后端开发编程题

1.找出二维字符数组里行字符数组所共有的字符例子:输入:{{“you”,“are”,“pig”,“dog”},{“is”,“as”,“you”,“are”},{“kik”,“you”,“are”,“aoa”}}输出:{“you”,“are”}class Solution {public: /** * * @param values string字符串二维数组 * @param valuesRowLen int values数组行数 * @param valuesColLen in

2020-08-31 21:42:03 506

原创 this指针与sort的爱恨情愁

this指针和sort的爱恨情愁起因楼主在刷剑指offer的时候遇到了这么一道题,把数组排成最小的数,这是题的地址。解题思路无非就是先根据新的排序规则对原数组进行排序,然后在遍历生成数即可。我们知道,C++的STL库sort非常好用,其重载形式也多种多样,而sort重载版本的第三个参数是一个二元谓词(即只接受两个参数)。于是机智的楼主很快码出来了下面的代码:class Solution {public: string minNumber(vector<int>& nums) {

2020-08-26 22:28:44 397

原创 删除字符串数组中相同的字符串

#include<iostream>#include<vector>#include<string>#include<algorithm>using namespace std;template<typename T>void prinfVector(vector<T> &nums) { for (const auto &c : nums) cout << c << " ";

2020-08-22 14:53:14 644

原创 DevC++ [Error] ld returned 1 exit and VS error LNK2019

楼主今天写关于大顶堆的类的时候,在写完上滤之后,准备调试程序,结果VS提示我错误,如下:这我就很懵逼了,所以为了排除编译器的错误,我又点开了DevC++,又码了一遍代码,还是出现了错误:纳闷的我苦寻结果,最终在自己定义的类中找到了坑人的地方,因为我是直接调用的VS构造类,所以VS给出的析构如下:完全就不是一个完整的析构函数,所以将其补充完整后(加上花括号或者default),程序恢复正常:总结:如果是定义了一个类,一定要注意规范的函数书写,不然就会像楼主那样闹出笑话。...

2020-08-15 16:10:47 115

原创 const_cast与编译器优化

const_cast我们知道C++四种cast转换,它们分别为:const_cast,static_cast,dynamic_cast和reinterpret_cast。楼主在学到这几种转换时,对const_cast产生了性趣,根据原理它是能够将const对象的const特性去除,所以楼主就写了下面这段代码来验证: const int a=5; int *p=const_cast<int*>(&a); *p=4; cout<<"a: "<<a<&l

2020-08-11 13:24:47 152

原创 二叉树的前序,中序和后序遍历的递归与迭代代码

前序遍历递归借助的程序的运行时栈,所以改为迭代时,本质上借助stack去模拟运行时栈。递归/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Soluti

2020-08-06 21:01:49 153

原创 浪潮笔试之搬石头

搬石头排序题目:沙滩摆放着一排大小不一的球形石头,已知第i个石头的半径为ri,不存在两个石头半径相等。现要求通过移动石头使摆放的石头从左往右半径递增。每次可选择一块石头,并把它放在剩下n-1块石头的最左边或最右边。求最少操作次数。输入:第一行一个整数n,表示石头个数。(1 <= n <= 100000).第二行n个整数,表示从左往右石头的半径r1,r2,…,rn( 1<= ri <= n)。保证不存在两个不同的石头半径相等。输出:最少操作次数。样例输入63 2 1 4 6

2020-07-17 13:29:58 2819 1

原创 之字形打印二叉树

思路:首先我们需要逐层打印二叉树,然后根据每一层的状态判定是从左到右,还是从右到左。首先问题的核心其实是从上到下,从左到右打印二叉树,只不过后面题目多了两个要求,所以我们2代码的大体框架应该是基于从上到下打印二叉树;其次逐层打印二叉树,实际上就是让我们对每一层设置标志位,然后根据标志位去决定打印的情况;最后之字形,其实还是根据标志位去决定正序,还是逆序打印;分析,完毕,参考代码如下:/*struct TreeNode { int val; struct TreeNode *left;

2020-06-22 14:47:45 296

原创 Word插入Latex伪算法

科研打工者们一般都是用Latex写作文章,一是方便,二是国外期刊投稿多要求Latex的版本论文,且也给出的是相应的Latex模板。不过如果我们想把论文投向日益发展不错的国内期刊,那么问题就来了,国内期刊有些要求论文的Word格式,且给出的也是Word模板,如果我们还想保留Latex帅气的伪算法怎么办,莫慌,可以按如下要求操作:1.你需要下载一个Aurora并安装,最好是直接默认安装,免得以后使用时出现各种麻烦,类似网址都行,这只是一个参考网址2.安装完毕,重新打开Word,点击插入,点击对象,选择Au

2020-06-18 21:00:17 2293

原创 LaTex写作时没有错误无法编译问题

当我们使用latex进行写作时,偶尔会出现当我们修改一段文字,明明没有任何的代码错误,latex却一直无法编译。如果你有上述情况莫着急,按照下列步骤尝试解决问题:1.找到latex的垃圾桶小图标,点击它:2.找到delete now,点击一下,再点击ok标志即可:3.重新点击编译即可解决问题!...

2020-06-18 20:37:37 8227

原创 IndexError: index 4 is out of bounds for dimension 0 with size 4

实则就是C++的数组越界的问题,定位到相应处,比如图片处的循环,将其改为合适的数组范围即可,我这里是3。而各位的只需要参考自己循环体结构想要做什么,根据结束条件修改即可!

2020-06-18 20:17:10 8583

原创 C++ size_t和size_type

size_t和size_type的使用是为了让我们的程序更具移植性。起初我理解size_t对应类似int,而size_type对应类似于unsigned,两者在具体使用的是应该略有区别,后面跟朋友讨论时,他跟我说,没有道理说两者有什么区别,还为我举例论证。为了以后对两者不再模糊,于今天写下笔记方便回忆。事实上,标准容器限定了size_t为一个Allocator::size_type的别名,我们可以在vector中的allocator中找到其定义,如下图所示。所以,在标准情况下,两者完全一致。对于此,

2020-05-22 08:38:14 259

原创 C++ 类型别名的三种方式

类型别名是C++用来使类型在某些情况下更加容易理解而定义的类型的同义词。总共三种方法可以用来定义类型别名:1.#define:宏定义本质替换,所以也可以定义类型的同义词;2.typedef:传统方法;3.using:C++11新方法例子:typedef string qq;#define temperature doubleusing age = int;int main(){ qq name = "543975127"; temperature mon = 36.5; age a

2020-05-20 22:01:38 1452

原创 旋转数字的最小数字

题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。分析:题目定义了何为旋转数组,并且用例子告诉了我们输入的数组旋转前是非递减。所以由此我们可以获得以下信息:1.非递减数列意味着数列有序;2.旋转数组后,整个有序数组变为了两个有序数组(则数组相邻处存在跳变,如例子

2020-05-18 16:50:31 139

原创 重构二叉树

输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。分析:给了我们一颗二叉树的前序遍历和中序遍历,则我们根据两个遍历的遍历方式来思考如何重构。已知preorder:VLR,inorder:LVR。所以,很显然,preorder可以找到树的根节点,而有了根节点再看inorder,我们就能够清楚根节点的左子树inorder序列,

2020-05-18 10:46:23 222

原创 输入一个链表,按链表从尾到头的顺序返回一个ArrayList。

时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32M,其他语言64M热度指数:1348087分析:从头到尾的顺序返回一个链表,首先我们立即思考到可以使用栈的结构或者和栈思想一致的递归,前者需要额外的空间,而后者则需要注意链表过长导致的运行时栈的溢出。带着这个思路我们看题发现题目已经定义了链表节点结构,并且指定了反转算法的返回值只能为vector。于是乎,既然不得不用vector,则我们只需要用vector完成栈功能即可。代码如下class Solution {public:

2020-05-15 17:24:07 105

原创 合唱团

问题有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这k 个学生的能力值的乘积最大,你能返回最大的乘积吗?输入描述:每个输入包含 1 个测试用例。每个测试数据的第一行包含一个整数 n (1 <= n <= 50),表示学生的个数,接下来的一行,包含 n 个整数,按顺序表示每个学生的能力值...

2019-12-24 11:45:44 103

原创 修改案例分析的程序,输出不带有死胡同但是可以带迂回路(可能的话)的路径

修改案例分析的程序,输出不带有死胡同但是可以带迂回路(可能的话)的路径。例如,对一个输入的迷宫:案例分析的程序输出了经过处理后的迷宫图:修改后的程序应该产生从出口到老鼠初始位置的路径:[1 1] [1 2] [1 3] [2 3] [3 3] [3 4] [3 5] [4 5] [4 4] [4 3]它删除了两个死胡同:[1 4][1 5]和[3 2][3 1][4 1][4 2],但...

2019-10-10 10:00:27 123

原创 案例分析:迷宫问题

迷宫问题思考一下,当你陷入迷宫时该如何找到出口?纵使各位大神有千方百计,但摆在各位眼前最直接的方法就是——走就完事了。对,走就完事了,遇见分叉口随便走,倘若到了死胡同则回到当初分叉口再走其他路(“回溯”),如此反复,只要迷宫有路,那咱们总能走出去的。现如今,咱们用程序该如何去模拟呢?其实很简单,刚刚所说的系统性尝试所有路径的方法同样也适用于程序。于是乎,我们只需将刚刚描述代码化便能够解决这个问题...

2019-10-10 08:45:11 1334

原创 案例分析:图书馆

图书馆模拟一个生活中小型图书馆的使用程序,功能如下:1. 向图书馆添加书籍2. 向图书馆借出书籍3. 向图书馆归还书籍4. 显示图书馆当前状态5. 退出程序简单分析如下:我们需要知道书籍,作者以及读者之间的联系。一本书有作者,有书籍名,如果直接把书归为一类,作者和书籍名都是其类内成员,然后用容器装上书类,再进行相关操作,就会显得较为复杂。根据分而治之的思想,我们把其分为两类单独表示...

2019-10-06 15:07:29 1187

原创 案例分析:随机访问文件

随机访问文件任务:写一个通用程序,为任何类型的记录生成随机访问文件。该程序运行后生成了一个包含个人记录的文件,每条记录由5个数据成员(社会安全号码、姓名、所在城市、出生年份以及薪水)组成,该程序还生成了一个存储学生记录的学生文件,学生记录的数据成员与个人纪录相同,另外还增加了学院专业,再次使用了继承。此案例分析中,通用的随机访问文件程序能够将新记录插入文件,在文件中查找记录,还可以修改记录。文...

2019-10-03 10:24:00 947

原创 单向链表模板类实现

#pragma once#ifndef INT_LINKED_LIST#define INT_LINKED_LIST片template<class T>class SLLNode //结点类模板{public: SLLNode() { next = 0; } SLLNode(T e1,SLLNode *ptr = 0){ info = e1; next =...

2019-10-03 09:40:05 394 1

原创 POJ1008

地址:http://poj.org/problem?id=1008不知道自己为啥一直Runtime Error,现贴出来,望大佬指导,感激不尽。#include "pch.h"#include<string>#include <iostream>using namespace std;int sl3;string sl1;string sl2;int Ha...

2019-08-02 08:43:01 233

原创 POJ1007

DNAsorting#include <iostream>#define maxn 51#define maxm 100char a[maxm][maxn];using namespace std;void DNAsort(char a[maxm][maxn], int n, int m){ int co[maxm]; memset(co, 0, sizeof(co)...

2019-07-23 14:37:26 142

原创 POJ1005

题:http://poj.org/problem?id=1005#include<iostream>using namespace std;#define maxn 100000double ero[maxn];#define pi 3.141592654int main(){ for (int i = 0; i < maxn; i++) {...

2019-07-23 14:34:50 130

原创 POJ1004

include<iostream>using namespace std;int main(){ double mycount[12], a=0; for (int i = 0; i < 12; i++) {  cin >> mycount[i]; } for (int i = 0...

2019-07-23 14:33:27 79

原创 POJ1003

题:http://poj.org/problem?id=1003#include<iostream>#define maxn 1000005double a[maxn];using namespace std;int hangover( double x){ int i; for (i = 1; i < maxn; i++) a[i] = a[i - 1] +...

2019-07-23 14:31:02 77

转载 POJ 1002

DescriptionBusinesses like to have memorable telephone numbers. One way to make a telephone number memorable is to have it spell a memorable word or phrase. For example, you can call the University o...

2019-07-18 10:32:22 113

转载 POJ 1001

DescriptionProblems involving the computation of exact values of very large magnitude and precision are common. For example, the computation of the national debt is a taxing experience for many compu...

2019-07-16 15:47:12 143

原创 POJ 翻转卡片

分析:根据题目要求可知:全局正面朝上=所有的局部正面朝上。这也意味着贪心+递归是解题核心思路,即所有局部正面朝上构成了整体正面朝上。#include<iostream>#include<stdio.h>using namespace std;bool a[1000][1000];int N, M;int num = 0;void f(int x){ if...

2019-07-14 09:36:22 207

原创 KMP

include<iostream>using namespace std;int *buildNext(char *P) { size_t m = strlen(P), j = 0; int *N = new int[m]; int t = N[0] = -1; while (j < m - 1) { if (0 > t || P[j] == P[t]) ...

2019-07-10 10:39:48 79

空空如也

空空如也

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

TA关注的人

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