- 博客(33)
- 资源 (3)
- 收藏
- 关注
原创 (计算机图形学)Delaunay三角形剖分的HTML+js的浏览器实现
最近在学计算机图形学,第一次比较难的作业就是Delaunay三角形剖分,在这里记录一下代码。HTML部分<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Delaunay三角形剖分</title></head&...
2019-10-29 20:53:42
2299
3
原创 1024节日快乐
听说今天发博客领勋章,嘿嘿,小白特地来蹭一下,确实最近一直在忙学习、实验和论文,没什么可发的,以后再来搬砖叭,不要举报我呀。嘿嘿~
2019-10-24 12:21:39
391
原创 直接插入排序、希尔排序、冒泡排序、快速排序、简单选择排序及归并排序
这六种排序算法在排序中非常常用,使用频率较高,故记录一下,以后自己忘了还能看一下。直接插入排序:这个算法起源将一个数据插入到一个有序的数列中。从后往前一个一个比较,当找到插入点时,直接插入,不影响有序性。对于一个乱序的数列,将该算法重复使用,先排序前两个,再排序前三个…直到排到最后一个。举例:将一个数插入到一个有序序列中,例如将flag插入R[i]中的i个有序的元素中(R[i]不是数组,单纯的...
2019-04-01 13:17:13
10570
原创 c++算法分析与设计之大整数递归乘法详解
大整数乘法的算法能将两个二进制数相乘的时间复杂度由O(n²)降为O(n1.59),还是比较厉害的一个算法。下面看一下我的实现过程。#include<iostream>#include<cmath>using namespace std;int powf(int a, int b)//自定义的求次方函数,因为在c++中有类型限制,使用不方便{ int t = 1;...
2019-03-19 19:23:09
3210
原创 算法设计与分析之棋盘覆盖,以及其直观输出
今天预习了棋盘覆盖算法,体会到了算法的精妙之处,刚才终于把这个程序完成了,在原有经典的代码上添加了颜色,这个纯属想玩,也感觉非常有趣。下面进入正题:【棋盘覆盖】首先来了解什么是特殊方格,在一个由2∧k个方格为边长组成的棋盘中,若恰有一个方格与其他方格不同,则称该方格为特殊方格,显然有4∧k中特殊方格情况。用4种不同的L型骨牌覆盖一个给定的特殊棋盘(即特殊方格的位置已经确定了)上除去特殊方格外的...
2019-03-18 21:06:17
3522
原创 统计数字问题:给定书总页码,计算所有页码数字中,分别总共用到了几次0,1,2…9
【问题描述】一本书从自然数1开始顺序编码直到自然数n。书的页码按照通常习惯编排,每个页码都不含多余的前导数字0。要求给定书的总页码n,计算书的全部页码分别用到多少次数字0,1,2,…,9。【问题解决】#include<iostream>using namespace std;void f(int page){ int i, j; int result[10] = { 0...
2019-03-02 14:29:28
4567
7
转载 破解2018版pycharm详细过程及pycharm无法打开的原因
刚学习python,老师让自己下载pycharm,不过想永久使用当然要想办法去破解啦。下面是补丁破解法,使用期到2099年,基本算是永久啦。下载https://pan.baidu.com/s/10uwS6DmiU3YGsGuBYPkxuA,并将 JetbrainsCrack-release-enc.jar 放置到 pycharm安装目录的\bin目录下(位置可随意,只要配置文件填写相对应的路...
2019-02-28 14:21:09
10310
2
转载 c++实现定时关机
#include <cstdlib>#include <iostream>using namespace std;int main(){ int i; cout<<"1、关机"<<endl <<"2、重启"<<endl <<"3、注销"
2019-02-10 19:16:37
5030
2
转载 STM32开发环境搭建
1.1 下载IDE目前STM32开发常用的IDE有IAR、MDK等,我挑选MDK作为开发工具,如果是IAR的爱好者,那么这篇文章可能不适合你。 MDK官方下载地址: http://www.keil.com/download/product/,目前最新版本是5.24。 官网下载页面入口: 下载需要填写个人信息: 点击下载即可: 从官网下载会比较慢,为了方便大家下载,有需要的同学可以...
2019-02-05 18:24:58
2292
3
原创 数据结构哈希表在查找中的使用
哈希表的原理是将全部数据通过某个函数来确定独特的一个存储位置,在查找某个数据时通过该函数来直接得到该数据的存储位置。所以在理想情况下该种查找方法的期望时间为O(1)。冲突是哈希表使用过程不可避免的存在,在数据较为庞大时,通过固定的一个函数转换很可能得到相同的结果,就发生了存储位置的冲突。所以在哈希表使用中最重要的就是函数的选取和冲突的解决方法。冲突的频繁程度除了与h相关外,还与表的填满程度相关...
2019-01-21 15:39:46
2129
原创 赫夫曼树(Huffman树)及赫夫曼编码
了解赫夫曼树前需要了解以下概念:路径:从树中某结点到另一结点之间的分支构成这两个结点间的路径。路径长度:路径上的分支数。结点的带权路径长度:从树根到该结点的路径长度与结点上权的乘积。树的带权路径长度:树中所有叶子结点的带权路径长度之和 (WPL)。例如:赫夫曼树(Huffman树):又称最优二叉树,它是n个带权叶子结点构成的所有二叉树中,带权路径长度WPL最小的二叉树。Huff...
2019-01-20 17:21:56
3491
原创 二叉树、树和森林之间的转换
【树转换成二叉树】加线:在兄弟之间加一连线抹线:对每个结点,除了其第一个孩子外,除去其与其余孩子之间的连线旋转:以树的根结点为轴心,将整树顺时针转45°【二叉树转换成树】加线:若p结点是双亲结点的左孩子,则将p的右孩子,右孩子的右孩子,……沿分支找到的所有右孩子,都与p的双亲用线连起来抹线:抹掉原二叉树中双亲与右孩子之间的连线调整:将结点按层次排列,形成树结构【森林转换成...
2019-01-20 16:51:23
1880
原创 二叉树的四种遍历和已知遍历序列还原二叉树(二)
上一次讲了二叉树考试中常用的性质,这次说一些实际操作。二叉树的遍历:按一定规律(顺着某一条搜索路径)访问二叉树中的所有结点,使得每个结点均被访问一次,而且仅被访问一次。访问的类型有很多,如:输出或修改结点的信息等,以下用输出为例。因为二叉树有两个或一个后继元素,所以要规定一下遍历方式。先(根)序的遍历算法:&nbsp;&nbsp;若二叉树为空树,则空操作;否则,(1)访问根结点; visi...
2019-01-20 16:32:30
2637
原创 数据结构二叉树常考性质及详细解析(一)(C语言版)
树型结构是一类非常重要的非线性结构,它可以很好地描述客观世界中广泛存在的具有分支关系或层次特性的对象,在计算机领域里有着广泛应用。树是以分支关系定义的层次结构,树的定义如下:树(Tree)是n(n≥0)个结点的有限集T,如果n = 0,称为空树;否则:有且仅有一个称为树的根(root)的结点。当n&amp;amp;gt;1时,其余结点可分为m(m&amp;amp;gt;0)个互不相交的有限集T1,T2,……Tm,其中每一个集合...
2019-01-20 14:25:54
2257
3
原创 解析LIFO(FILO)结构栈(C语言版)
栈是计算机中超级超级常用的一种结构方式,也可以称之为思想。它的特点是对于存储的数据先进者后出,后进者先出,这种结构能够很好的保存上一次操作的状态,所以应用相当的广泛。栈的定义:限定仅在表尾进行插入或删除操作的线性表。表尾被称为栈顶,表头被称为栈底,不含元素的空表称空栈。线性表有两种方式,对于栈来讲也是相同的两种,顺序栈和链栈。个人理解栈的功能实现是控制了对栈的使用接口,这个接口就是栈顶指针,每次...
2019-01-19 20:55:40
5100
原创 含头结点单链表的头插入建立和尾插入建立
单链表是线性表中链式存储中较为简单的一种数据存储方式,通常要根据不同情况的需要灵活运用两种建立方式。先定义结点:typedef struct Lnode { int date; struct Lnode *next;}LNode;假设:线性表中元素的数据类型是整型,以32767作为元素输入的结束标志。【头插入法】从一个空表开始,重复读入数据,生成新结点,读入数据存放到新结点的数据...
2019-01-19 17:12:22
4000
原创 数据结构中头结点的作用
数据结构中,在单链表的开始结点之前附设一个类型相同的结点,称之为头结点。头结点的数据域可以不存储任何信息,头结点的指针域存储指向开始结点的指针(即第一个元素结点的存储位置)。作用1、防止单链表是空的而设的,当链表为空的时候,带头结点的头指针就指向头结点,如果当链表为空的时候,单链表没有带头结点,那么它的头指针就为NULL。2、是为了方便单链表的特殊操作,能有效减少代码量,在插入在表头或者删...
2019-01-19 12:20:36
23206
原创 C语言数据结构用顺序表实现集合并、交、差运算
顺序表是一种简单的数据存储结构,既然把数据存起来就肯定要用,利用顺序表充当集合来实现集合的常用3种运算是一种常见的问题。代码如下:#include<stdio.h>#include<stdlib.h>#define OK 1#define FALSE -1#define TURE 1#define ERROR -1#define OVERFLOW -1#de...
2019-01-19 11:47:00
9606
1
原创 C语言线性表之顺序表的13种函数操作
学习数据结构开始就会学到第一种数据存储结构–线性表,学习线性表时一定会先学到顺序表,顺序表是一个较为简单的线性表,没有链表满天飞的指针。它的本质就是申请一块连续的内存,和数组相似,保存第一个地址的指针就欧克了,在通过第一个地址往后偏移若干量来实现能对所有进行操作。直接看一下创建一个线性表及多种操作的代码吧。#include<stdio.h>#include<stdlib.h&...
2019-01-19 11:28:16
3795
1
原创 计算机位,字,字节,字长详解
在开始学习计算机时就接触到上面四个大佬,总是似懂非懂的,后来做题和理解新的知识时总会有些麻烦,一气之下单独找个时间好好看看。以下是个人总结,有不对的地方请多多赐教。【位和字节】先简单说一下存储容量一些东西,更容易理解。在存储容量上大家都很熟悉什么GB,MB,KB,B啥的,我们也知道字节(B)(*全称是Byte)是最小的存储单位,但还有个更小的、直观看不到的单位就是位,也称为 比特(bit),通...
2019-01-17 13:51:11
16757
6
原创 计算机组成原理画出CPU与主存及3-8译码器之间信号线的连接问题
【前驱知识–主存储器扩展】&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;主存储器表达方法:字线(地址线) × 位线(数据线)&amp;amp;amp;amp;amp;nbsp;&am
2019-01-16 12:09:35
13110
19
转载 在 Chrome 中清除、启用和管理 Cookie
Cookie 是什么?Cookie 是您访问的网站所创建的文件。Cookie 通过保存浏览信息来让您获得更轻松的在线体验。借助 Cookie,网站可使您保持登录状态、记住您的网站偏好设置,并为您提供本地的相关内容。Cookie 分为以下两类:第一方 Cookie 是由您访问的网站创建。相应网站会显示在地址栏中。第三方 Cookie 是由其他网站创建。这些网站拥有您访问...
2019-01-14 11:10:09
907
原创 Linux中vi的命令行模式、编辑模式和末行模式及常用操作
先说一下编辑文档中的移动光标,l(相当于→),h(相当于←),j(相当于↓),k(相当于↑),当然也可以直接用方向键,不记字母也是阔以滴,但在要多次使用时还是记住字母方便(比如:100l,向右移动100次)。【命令行模式】(有地方也被称为普通模式)这是打开一个文档直接进的模式,一般可以完成选定、复制、剪切(删除)、恢复和撤销等操作。先介绍基本操作,nG将光标直接定位到第n行,G定位到尾行,u是...
2019-01-13 20:51:40
8178
1
原创 Linux的主分区、扩展分区和逻辑分区
Linux中主分区、扩展分区和逻辑分区和Windows的概念差不多,这里来类比着介绍一下Linux中的概念。【磁盘命名】在Linux中,若干个IDE设备(如:硬盘,光盘)的命名规则如下:每个设备映射的文件名称都有一个hd前缀,按字母表排序命名,从第一个往后依次为:hda,hdb,hdc……。要注意的是USB磁盘通常会被识别为SCSI设备,命名依次为:sda,sdb,sdc…。【概要】在Li...
2019-01-13 18:26:10
10713
转载 在优快云里怎样转发别人博客
转载优快云博客步骤:1.优快云博客页面右键,点击【检查】 点击检查后,页面右侧出现html代码,如下图 2.如果需要转载全文,则在html代码下侧点击选中article_content 即可,会在代码框中自动选中article_co...
2019-01-13 17:33:11
777
2
转载 Linux文件权限 SUID/SGID/SBIT
Linux文件权限 SUID/SGID/SBIT Linux的文件权限除了rwx之外,还有s和t这两个特殊的。一、Set UID 当s这个标志出现在文件所有者的x权限上时,此时就被称为Set UID,简程SUID。例如执行ls -l /bin/su可以看到 执行ls -l /usr/bin/passwd 可以看到 在文件所有者的x权...
2019-01-13 17:27:44
3151
原创 数据库范式判断及分解技巧
这个博客就当自己的笔记了,写的不好不对的地方,大家多多指教啦。数据库中的范式是考试中必考的重点,也是应用中比较实用的操作标准。不说废话了,下面将分段来从不同深度开始说。【前驱知识补充】函数依赖简单通俗地说就是属性之间是否有确定的关系,比如:学生表(学号,姓名,性别,选修课,成绩),学号函数确定姓名,(学号,选修课)函数确定成绩;在不重名情况下,姓名函数确定性别,也可以称为性别函数依赖姓名,记...
2019-01-12 20:44:11
20777
8
原创 抓石子游戏算法
【问题】抓石子游戏又称为巴什博奕,简单描述一下,有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。取到最后一个物品者得胜。【解法】显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先取者拿走多少个,后取者都能够一次拿走剩余的物品,后者取胜。因此我们发现了如何取胜的法则:分段来进行讨论,如果n<=m,emmm…这还有意义吗?在n>m中再分情况讨论...
2019-01-12 13:48:01
3917
原创 二叉树的创建及相关操作
二叉树是一种非常重要的数据存储结构,是一种特殊的、常用的树型数据结构,则其基本操作也就非常重要。因为二叉树本身就是一个递归型数据存储结构,所以其操作基本上都可以用递归的形式实现。【二叉树的创建】要严格地进行输入,要把所有结点的左右孩子都进行输入,空结点用#代替(比如:ABC##DE#G##F###)。typedef struct BiTNode { char date; struct B...
2019-01-12 12:59:37
1362
原创 C++汉诺塔游戏
【问题描述】汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。【问题分析】汉诺塔用递归理解较为简单,在理解时,不要局限常规,最好把三根柱子围成一个正三角形理解...
2019-01-11 20:19:51
3991
原创 C语言约瑟夫生死游戏
大二后开始学习数据结构,开始痴迷于各种算法,解决的第一个比较有趣的问题就是约瑟夫生死游戏。当时是用无头结点的循环链表写的,因为个人感觉这种方式比带头结点的循环链表和单链表更符合问题环境,也就是容易想。问题描述约瑟夫生者死者游戏的大意是:30个旅客同乘一条船,因为严重超载,加上风高浪大,危险万分;因此船长告诉乘客,只有将全船一半的旅客投入海中,其余人才能幸免遇难。无奈,大家只得同意这种办法,...
2019-01-11 19:41:59
5582
6
原创 2048游戏的C语言代码
2048游戏的C语言代码大一上学期才接触编程,学习完C语言,一直只用它写老师布置的题总有些难受,总是面对黑白的控制台写题也太无聊了叭。后来学长推荐可以尝试编写一个简单的游戏,用C语言足矣。然后寒假在家完成了我的第一个游戏,后来又加上了不同颜色的功能。不说废话了,开始展示代码,大神勿喷哦。#include&lt;stdio.h&gt;#include&lt;stdlib.h&gt;#incl...
2019-01-11 19:02:45
17334
10
dlib_whl文件.rar
2021-05-12
Kaggle_Titanic_train.csv泰坦尼克数据集.zip
2020-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人