自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

攻城狮的博客

小白学习啦

  • 博客(12)
  • 收藏
  • 关注

原创 Kruskal算法最小生成树(MST)

问题:畅通工程(06年浙江大学研究生上机题目)问题描述:某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。 输入:测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( < 100 );随后的N(...

2018-02-08 16:55:06 618

原创 整除问题:给定n,a求最大的k,使n!可以被a^k整除但不能被a^(k+1)整除

题目描述:给定n,a求最大的k,使n!可以被a^k整除但不能被a^(k+1)整除。输入:两个整数n(2输出:一个整数.样例输入:6 10样例输出:1本题目不采用轮流试的暴力解法,因为n若足够大,比如1000!实则是一个很大的数(相当大,超出想象)。于是我们想一下,既然要求整除,说明两个数n!的素因数与a的每个素因数都是可以

2018-02-01 17:37:51 5040 2

原创 C语言:素数筛法与分解素因数

一、素数筛法素数筛法是关于求小于某个大数(正整数)的所有素数的算法,首先有理论:任何整数n≥2都可以分解成若干质数的乘积,即n=p1p2···pr。用筛法求素数的基本思想是:把从1开始的、某一范围内的正整数从小到大顺序排列, 1不是素数,首先把它筛掉。剩下的数中选择最小的数是素数,然后去掉它的倍数。依次类推,直到筛子为空时结束。如有:1 2 3 4 5 6 7 8 9

2018-01-30 23:35:51 1269 1

原创 C语言求最大公约数、最小公倍数

一、求最大公约数先分析一个问题:如何求任意两个非负整数的最大公约数(GCD),这里我们不用逐个试的暴力破解,而采用巧妙的欧几里得算法。先看如下证明过程(证明主要摘自百度百科~~):定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数任意两个非负整数a,b,(不妨设a>b 且r=a mod b ,r不为0)a可以表示成a = k*b + r(a

2018-01-29 17:59:10 2677

原创 进制转换

题目描述: 求任意两个不同进制非负整数的转换(二进制~十六进制),所给整数在long所能表达的范围之内。不同进制的表示符号为(0,1,...9,a,b,...,f),或者(0,1,...,9,A,B,...,F)。输入: 输入只有一行,包含三个整数a,n,b。a表示其后的n是a进制整数,b表示将a进制整数n转换成b进制的整数。a,b均是十进制整数,2输出: 可能有多组测试数据,

2018-01-28 17:44:42 227

原创 数位拆解

数位拆解即把一个给定的数字各个数位上的数字拆开,如1234即拆成1,2,3,4。题目描述:写个算法,对2个小于1000000000的正整数,进行拆分后按如下示例求结果示例:123*45 = 1*4+1*5+2*4+2*5+3*4+3*5 = 54样例输入: 123 45样例输出: 54问题分析: 一个四位正整数x,可以写为:        x=a*1

2018-01-28 11:57:45 2062

原创 C语言二叉排序树基本操作

定义: 二叉排序树是一棵特殊的二叉树。其必须满足:要么为空树或者树上任一结点,其值大于等于其左子树上的任意结点值(左子树非空),且小于其右子树上任意结点的值(右子树非空),其左右子树也满足该定义。结构体:typedef struct node //二叉树结构体 { struct node * lchild; struct node * rchild; i

2018-01-27 17:45:22 1685

原创 由二叉树前序序列、中序序列输出相应后续序列

题目描述:给定一棵二叉树的前序遍历和中序遍历序列,求其后序遍历续列(注:给定中序遍历序列,只要知道前序、后序或者层次遍历中的一种就能唯一的确定一棵二叉树)。输入:两个字符串,其长度均小于26。第一行为前序遍历,第二行为中序遍历。二叉树的结点名称以大写字母表示:A,B,C,D.......,最多26个字母。输出: 输入样例可能有多组,对于每组测试样例,输出一行,为后续遍历

2018-01-27 14:59:52 3907 1

原创 C/C++语言:简单哈夫曼树

树的一些概念:路径:从树中任一结点到达另一结点的通路称为路径路径长度:路径上所经过的边的个数称为路径长度结点权值:树结点带有某种意义的数值称为权值结点的带权路径长度:从树根结点到树中某结点的路径长度乘以该结点的权值的值树的带权路径长度:所有叶结点的带权路径长度之和哈夫曼树:树的带权路径长度最小的二叉树(这里我们默认是二叉哈夫曼树),也称为最优树哈夫曼树的一些应用:求哈弗

2018-01-27 10:02:05 706

原创 C/C++语言:简单计算器、中缀式求值问题

问题描述: 这里的算数运算求值问题是:用户输入包含运算符“+”,“-”,“*”,“/”,“(”,“)”及正整数构成的合法算数运算式(即中缀式)例如:4+(2*5-6/12),计算并输出该表达式的运算结果。问题分析: 这是数据结构中堆栈的经典应用,考察栈的基本操作,及一些多分枝结构的代码编写,同时还涉及到表达式中运算符的一些逻辑问题。 这里需要先定义两个栈,一个运算符栈op,一个运算

2018-01-24 16:09:46 405

原创 简单括号匹配问题

学习心得题目如下:在某个字符串中有左、右括号(本算法只匹配小括号,有其他括号时类似处理,多增加几个选择分支即可)及大小写字母;写一个程序,找到无法匹配的左括号和右括号,输出原来的字符串,并在下一行标出不能匹配的括号。不能匹配的左括号用“#”标注,不能匹配的右括号用“?”标注。样例输入:)(rttyy())ss)(样例输出)(rttyy())sss)(?

2018-01-23 20:51:15 1039

原创 用Unity做一个简单的手势解锁

最近有机会用Unity做了一个简单的手势解锁,界面及实现方法相当low,只是作为交流,请各位大虾轻喷。最开始做的时候,大概思路是,把手势解锁分为三块来做:一是搭建界面;二是实现手势划线逻辑;三是实现解锁的各种逻辑,比如密码创建、储存、修改、删除,手势的储存、手指中途离开屏幕的处理、经过点自定连线的手势处理等等。

2016-12-10 18:08:27 3180 2

空空如也

空空如也

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

TA关注的人

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