自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 蒙特卡罗模拟网站访问——PageRank算法

假设一种简单的情况,互联网上有5个网站可供访问,分别是网站A~D,他们之间互相链接,如下图所示,例如“网站A”下面只有一个超链接“网站D”,“网站B”和“网站C”下面分别都只有超链接“网站A”,那么这些网站在搜索引擎上应该怎么进行排序呢?当然可以按照所访问的网站停留时间进行排序。这个被称作PageRank的算法是由谷歌创始人布林和佩奇提出的。我们可以算算任意一个网站的访问可能性,例如算算小王从

2017-09-21 19:05:20 1587

原创 K&R 6.3 结构数组与结构指针

K&R6.3节中,有一个匹配关键词的程序,它的作用是对输入的文本进行关键词次数统计。

2017-06-16 21:29:11 274

原创 数组变换(编程题)

牛牛有一个数组,里面的数可能不相等,现在他想把数组变为:所有的数都相等。问是否可行。牛牛可以进行的操作是:将数组中的任意一个数改为这个数的两倍。这个操作的使用次数不限,也可以不使用,并且可以对同一个位置使用多次。输入描述:输入一个正整数N (N <= 50)接下来一行输入N个正整数,每个数均小于等于1e9.输出描述:假如经过若干次操作可以使得N个数

2017-06-16 10:40:59 1395

原创 添加字符

牛牛手里有一个字符串A,羊羊的手里有一个字符串B,B的长度大于等于A,所以牛牛想把A串变得和B串一样长,这样羊羊就愿意和牛牛一起玩了。而且A的长度增加到和B串一样长的时候,对应的每一位相等的越多,羊羊就越喜欢。比如"abc"和"abd"对应相等的位数为2,为前两位。牛牛可以在A的开头或者结尾添加任意字符,使得长度和B一样。现在问牛牛对A串添加完字符之后,不相等的位数最少有多少位? 

2017-06-15 21:32:15 573

原创 神奇数

给出一个区间[a, b],计算区间内“神奇数”的个数。神奇数的定义:存在不同位置的两个数位,组成一个两位数(且不含前导0),且这个两位数为质数。比如:153,可以使用数字3和数字1组成13,13是质数,满足神奇数。同样153可以找到31和53也为质数,只要找到一个质数即满足神奇数。 输入描述:输入为两个整数a和b,代表[a, b]区间 (1 ≤ a ≤ b ≤ 10000)。

2017-06-15 16:47:52 923

原创 变换次数

牛牛想对一个数做若干次变换,直到这个数只剩下一位数字。变换的规则是:将这个数变成 所有位数上的数字的乘积。比如285经过一次变换后转化成2*8*5=80.问题是,要做多少次变换,使得这个数变成个位数。 输入描述:输入一个整数。小于等于2,000,000,000。输出描述:输出一个整数,表示变换次数。输入例子:285输出例子:

2017-06-15 14:35:23 486

原创 打印输入的单词长度和各个字符出现频数的直方图(水平方向和垂直方向)

这事实上是K&R导言中练习1-13和1-14的问题,因为两个问题都涉及直方图,有些相似,所以都放在一起。相对来说自由发挥的余地比较大,不同的码者会写出不同形式的代码,下面只是我的解决方案。#include #include #define MAXLINE 1000//练习1-13 编写一个程序,能够打印输入中单词长度的直方图。【水平方向和垂直方向】//当输入一个字符时,代表着计数加一,当输入碰

2017-04-28 22:35:14 724

原创 shell排序在python中的实现

第一次接触到shell排序,算法比较有意思,简单记录一下。它的思想是先比较序列中距离比较远的元素,这样可以快速减少大量的无序情况,从而减轻后续操作。在python中的代码如下:#coding: utf-8def shell_sort(A, n):    m=0    k=0    gap=n      while gap>1:        gap/=2   

2017-04-14 14:18:45 473

原创 求最大的子序列和的算法

处理最大的子序列和的算法有多种,这里包括了书中提到的两种时间复杂度比较好的算法。1. 分治法   判断最大子序列和的分治法,其思想就是将某个序列分为两部分,当第一次判断结束后再次进行迭代,迭代后再次对子序列进行划分,划分后的子序列再次进行最大序列和的判断。依次递推,直到当最大序列和的左右边界相同时迭代结束。最大的序列和会出现在前半部分、后半部分,以及跨越两部分这三种情况,取这三者的最大值就

2017-04-12 16:37:26 447 1

空空如也

空空如也

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

TA关注的人

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