摘要:
题目链接:6-1 单链表逆转 (20分) 方式一:递归逆置单链表 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <math.h> 4 #include <string.h> 5 #include <ctype.h> 6 7 #define 阅读全文
摘要:
对于一道A+B的题目,如果A和B的范围在int范围内,那么是很简单的。但是如果A和B都是超过100个数位的整数,那么问题就变得复杂了。 今天,我借鉴《算法笔记》中的算法,总结下大整数运算的技巧。 一、大整数的存储 很简单,使用数组即可。如将整数23581存储到数组中,则有如下数组图: 为什么要反过来 阅读全文
摘要:
上一次为了解决矩阵中的连通块的个数,我模仿了算法笔记中的代码,通过BFS(广度优先搜索算法)解决问题。 实际上这个问题(问题链接)也可以通过DFS(深度优先搜索遍历)解决。 解决思路:这个DFS的“岔道口”其实有四个(因为有四个方向)。这里为了防止走回头路,所以我们必须设立一个数组 记录该位置元素是 阅读全文
摘要:
前面介绍了深度优先搜索,可知DFS是以深度作为关键词的,即当碰到岔道口时总是先选择其中的一条岔路前进,而不管其它的岔路, 直到碰到死胡同时才返回岔道口并选择其它岔路。接下来介绍的广度优先搜索(Breadth First Search,BFS)则是以广度为第一关键词, 当碰到岔道口时,总是先依次访问从 阅读全文
摘要:
题目描述:给出一个m*n的矩阵,矩阵中的元素为0或1.称位置(x,y)与其上下左右四个位置是相邻的。如果矩阵中有若干个1相邻,则称这些1构成了一个块。求给定矩阵中的块数。输入:0 1 1 1 0 0 10 0 1 0 0 0 00 0 0 0 1 0 00 0 0 1 1 1 01 1 1 0 1 阅读全文
摘要:
90 循环数 作者: xxx时间限制: 1S章节: 一维数组 问题描述 : 循环数是那些不包括0这个数字的没有重复数字的整数 (比如说, 81362) 并且同时具有一个有趣的性质, 就像这个例子: 如果你从最左边的数字( 记为n,在这个例子中是8) 开始往右边数,一直数n个数字(如果已经到了最右边则 阅读全文
摘要:
49 我素故我在 作者: xxx时间限制: 1S章节: 深度优先搜索 问题描述 : 有这样一种素数叫纯素数(YY出来的名字),当它是一个多位数的时候,你把它的末位去掉之后余下的数依然是一个素数。比如说2393,2393 本身是一个素数,它的末位去掉之后,余下的是239。239 是一个素数,它的末位去 阅读全文
摘要:
43 序列 作者: ZhuKai 时间限制: 2S章节: 一维数组 问题描述 : 明明的爸爸经常用做游戏的方法启发明明对数学的兴趣。有一次,明明爸爸准备了许多盒子和球,他要和明明做一个放球的游戏。 游戏如下:要将k个小球依次装入到若干个盒子中去(可以使用的盒子数不限)。 小球装入盒子的规则如下: 1 阅读全文
摘要:
用一个例子,理解其中包含的DFS思想。 有n件物品,每件物品的重量是w[i],价值是c[i]。现在需要选出若干件物品放入一个容量为V的背包中, 使得在选入背包的物品重量和不超过容量V的前提下,让背包中物品的价值之和最大,求最大值n在1到20之间。 在这个问题中,需要从n件物品中选择若干件物品放入背包 阅读全文
摘要:
42 数列2 作者: frankhuhu时间限制: 10S章节: 一维数组 问题描述 : 思维的严密性是相当重要的,尤其是在程序设计中,一个小小的错误,就可能导致无法想象的后果。明明的爸爸是一名富有经验的程序设计专家,深知思维严密的重要性,于是在明明很小的时候,就通过游戏的方式,训练明明的思维严密性 阅读全文