自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

蓝色的sky

正在努力学习中。。。

  • 博客(29)
  • 问答 (2)
  • 收藏
  • 关注

原创 多项式相加

【问题描述】设计算法用顺序表实现两个多项式相加。【数据描述】定义一个结构体来存储每一项typedefstruct one {intdata;intindex;}enode;定义一个顺序表来存储多项式typedefstruct qList {enode*data;structqList *next;}L;【算法描述】输入多项式voi

2017-04-04 21:56:29 523

原创 n皇后

问题描述在n*n的棋盘上放置彼此不受攻击的n个皇后,按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n*n格的棋盘上放置n个皇后,任何2个皇后不放在同一行或同一列或同一斜线上。//暴力#include#include#include#define n 8//指定了8个皇后可以修改int a[n];int ok(){ int

2017-04-04 21:29:03 257

原创 Counterfeit Dollar

Time Limit: 1000MS Memory Limit: 10000KTotal Submissions: 41559 Accepted: 13237DescriptionSally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins

2017-02-10 16:46:07 260

原创 独立任务最优调度

问题描述独立任务最优调度用两台处理机A和B处理n个作业。设第i个作业交给A处理需要时间ai,交给B处理需要时间bi。由于各作业的特点和机器的性能关系,ai和bi之间没有明确的大小关系。既不有将一个作业分开由2台机器处理,也没有一台机器能同时处理2个作业。设计一个动态规划算法,使得这两台机器处理完这n个作业的时间最短。 测试用例: 6(任务数目) 2 5 7 10 5 2

2017-01-03 21:57:19 1212

原创 最小m段和

问题描述给定n个整数组成的序列,现在要求将序列分割为m段,每段子序列中的数在原序列中连续排列。如何分割才能使这m段子序列的和的最大值达到最小? input    9 3    987654321output      17#include#include#define n 9#define m 3int a[n+1]={0,9,8,7,6,5,4,3

2017-01-01 22:16:15 430

原创 最大k乘积

问题描述设I是一个n位十进制整数。如果将I分割为k段,则可得到k个整数。这k个整数的乘积称为I的一个k乘积。试设计一个算法,对于给定的I和k,求出I的最大k乘积。Input:5 354321Output:6420#include#define n 5#define k 3int s[n+1][n+1];int a[n+1]={1,5,4,3,2,1}

2017-01-01 22:14:57 265

原创 数字三角形

问题描述给定一个由n行数字组成的数字三角形,设计一个算法,计算出从三角形的顶至底的一条路径,使该路径经过的数字总和最大。测试用例: 5(行数) 7 3 88 1 0 2 7 4 4 4 5 2 6 5 输出: 30#include#define n 5int a[n][n]={7,-1,-1,-1,-1,3,8,-1,-1,-1,8,1,0,-

2017-01-01 22:12:58 220

原创 石子合并问题

问题描述在一个圆形操场的四周摆放着n堆石子。现要将石子有次序地合并成一堆。规定每次只能选择相邻的两堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。试设计一个算法,计算出将n堆石子合并成一堆的最小得分和最大得分。测试用例: 4(石子的堆数) 4 4 5 9(每一堆的石子数目) 输出:     43     54  这里只写了最大,最小思路相同#in

2017-01-01 22:11:37 269

原创 汽车加油问题

汽车加油问题一辆汽车加满油后可以行驶n公里,旅途中有加油站,设计一个有效算法,指出应在哪些加油站停靠加油,使沿途加油次数最少。测试用例: 7 7 (n k) 1 2 3 4 5 1 6 6(第k个加油站与第k-1个加油站之间的距离,其中第一个代表起点,最后一个代表终点。)  输出: 4(最少加油次数)   1    2    3    4     5       1  

2017-01-01 22:09:20 259

原创 会场安排问题

问题描述假设要在足够多的会场里安排一批活动,并希望使用尽可能少的会场。设计一个算法进行安排。测试用例: 5(活动数目) 1 23 12 28 25 35 27 80 36 50  输出:3 贪心#include #define n 5 int a[n][2]={{1,23},{12,28},{25,35},{27,80},{36,50}}; i

2017-01-01 22:05:21 234

原创 01背包问题

问题描述给定n种物品和一个背包。物品i的重量是wi,价值是vi,背包的容量为c。问应如何选择装入背包的物品,使装入背包中物品的总价值最大?Sample Input5 10wi:2 2 6 5 4vi:6 3 5 4 6Sample Output15动态规划#include#define n 5#define c 10int w[n+1]={0,2,

2016-12-29 20:22:45 241

原创 电路布线问题

作电路板时,将n条连线分布到若干绝缘层上。在同一层的连线不相交。电路布线问题就是要确定将哪些连线安排到第一层上,使该层上有尽可能多的连线。动态规划#include#define n 10int a[n+1]={0,8,7,4,2,5,1,9,3,10,6};int m[n+1][n+1];void find(int i,int j){ if(m[i][j]==

2016-12-29 12:24:50 1022

原创 图的m着色问题

问题描述给定无向连通图和m种不同的颜色。用这些颜色为图G的各顶点着色,每个顶点着一种颜色。是否有一种着色法使G中每条边的两个顶点有不同的颜色。这个问题是图的m可着色判定问题。若一个图最少需要m种颜色才能使图中每条边相连接的两个顶点着不同颜色,称这个数m为这个图的色数。求一个图的色数m称为图的m可着色优化问题。 给定一个图以及m种颜色,请计算出涂色方案数。回溯#inc

2016-12-29 09:10:04 287

原创 39级台阶问题

问题描述小明看完电影《第39级台阶》,离开电影院的时候,他数了数实际的台阶数,恰好是39级。 站在台阶前,他突然又想起一个问题:如果我每一步只能迈上1个或2个台阶,先迈左脚,然后左右交替,最后一步迈右脚,也就是说一共要迈偶数步。那么,上完39级台阶,有多少种不同的上法呢? 请利用计算机的优势,帮助小明寻找答案。回溯#includeint sum=0;int

2016-12-28 15:11:01 415

原创 批处理作业

问题描述给定n个作业的集合J={J1,J2,…,Jn}。每一个作业有两项任务分别在两台机器上完成。每个作业必须先由机器1处理,再由机器2处理。作业Ji需要机器j的处理时间为tji,i=1,2,…n,j=1,2。对于一个确定的作业调度,设Fji是作业i在机器j上完成处理的时间。则所有作业在机器2上完成处理的时间和f=F21+F22+…+F2n称为该作业调度的完成时间和。批处理作业

2016-12-28 08:59:20 969

原创 数字组合问题

问题描述有7对数字:两个1,两个2,两个3,...两个7,把它们排成一行。         要求,两个1间有1个其它数字,两个2间有2个其它数字,以此类推,两个7之间有7个其它数字。如下就是一个符合要求的排列: 17126425374635         当然,如果把它倒过来,也是符合要求的。         请你找出另一种符合要求的排列法,并且这个排列法是以74开头的。         注

2016-12-28 07:47:27 413

原创 数独问题

设计算法求解数独#include#define n 9int a[n][n]={0, 0, 5, 3, 0, 0, 0, 0, 0,8, 0, 0, 0, 0, 0, 0, 2, 0,0, 7, 0, 0, 1, 0, 5, 0, 0,4, 0, 0, 0, 0, 5, 3, 0, 0,0, 1, 0, 0, 7, 0, 0, 0, 6,0, 0, 3, 2, 0, 0

2016-12-27 20:44:05 545

原创 迷宫问题

给定一个m × n (m行, n列)的迷宫,迷宫中有两个位置,gloria想从迷宫的一个位置走到另外一个位置,当然迷宫中有些地方是空地,gloria可以穿越,有些地方是障碍,她必须绕行,从迷宫的一个位置,只能走到与它相邻的4个位置中,当然在行走过程中,gloria不能走到迷宫外面去。令人头痛的是,gloria是个没什么方向感的人,因此,她在行走过程中,不能转太多弯了,否则她会晕倒的。我们假定给定的

2016-12-27 19:34:32 509

原创 最大间隙问题。给定 n 个实数,求这n个实数在数轴上相邻2个数之间的最大差值,设计解最大间隙问题的线性时间算法。

问题描述最大间隙问题。给定 n 个实数,求这n个实数在数轴上相邻2个数之间的最大差值,设计解最大间隙问题的线性时间算法。input53 2 5 10 45output30#include#includeint main(){ int n,i,*a; printf("input the number of the numbers\n

2016-12-26 23:05:41 563

转载 iOS遗留系统重构实践

今天看到一篇关于系统重构的文章,我以前碰到过类似的问题。原文来自http://www.uml.org.cn/zjjs/201608091.asp在过去的几个月内,我主导着团队完成了一项工程浩大(累积八个人月的工作量)的重构工作——为我们的App替换数据库。之所以能够把这种伤筋动骨的事情称之为重构,是因为在这段时间内,我们每天向主干合并两到三次代码,期间App上线五次,用户没有感

2016-11-20 10:34:55 329

原创 如果x的x次幂结果为10,你能计算出x的近似值吗?

新开一类写比赛题目问题描述如果x的x次幂结果为10,你能计算出x的近似值吗?显然,这个值是介于2和3之间的一个数字。请把x的值计算到小数后6位(四舍五入),并填写这个小数值。注意:只填写一个小数,不要写任何多余的符号或说明。比赛中使用暴力是最快的解决方法,虽然时间复杂度等增加,但在时间有限的情况下,不允许浪费#include

2016-11-19 23:39:17 1215

原创 众数问题

众数问题问题描述:给定一组有重复元素的数值,求其中的众数以及重数众数问题我们可以采用递归和分值的策略;我们先对数值进行排序

2016-10-29 21:11:32 580

原创 最长公共子序列问题(LCS)

最长公共子序列问题(LCS)问题描述:求Z={'A','B','C','B','D','A','B'},X={{'B','D','C','A','B','A'}}的最长公共子序列

2016-10-28 16:15:52 434

原创 矩阵连乘问题的动态规划解法

问题描述:设要计算矩阵连乘积A0,A1,A2,A3,A4,A5,其中各矩阵的维数分别为:A0:30*15A1:35*15A2:15*5 A3:5*10A4:10*20A5:20*25

2016-10-25 11:34:22 3683

原创 有重复元素的排列问题

问题描述:设R={r1,r2,r3,r4..rn},其中可能存在重复的元素,设计一种算法列出所有不同的排列树的思想:我们知道如果没有相同的元素那么所有不同的排列就是所有的元素全部排列,但是当有重复元素的时候在同一个位置相同的元素只能出现一次,那么当深度为1的时候处在同一层中元素不能有相同的,其他的层也是如此这样当我们从根节点到达叶子节点的时候就是一种。算法实现如下:

2016-10-21 11:06:57 1342

原创 半数集问题

问题的描述给定一个自然数n,由n 开始可以依次产生半数集set(n)中的数如下。  (1) n∈set(n);  (2) 在n 的左边加上一个自然数,但该自然数不能超过最近添加的数的一半;  (3) 按此规则进行处理,直到不能再添加自然数为止。 例如,set(6)={6,16,26,126,36,136}。半数集set(6)中有6 个元素。 注意半数集是多重集。

2016-10-21 10:46:53 524

原创 大数运算

所谓的大数运算其实就是一个竖式运算例如:123      +  1--------------124所以我们写的程序就是想办法来构造竖式#include#includevoid main(){ char str1[100]="123458156156"; char str2[100]="1234852425454"; int a[100]; int b[100

2016-10-21 10:39:45 221

原创 欧几里得算法及其扩展

当大家在学习c语言的时候都会遇到求最大公约数的的问题,这时候我们用的是辗转相除的方法,其实就是欧几里得算法。欧几里得算法的定义:定理:两个整数的最大公约数等于其中较小的那个数和两数相除余数的最大公约数。最大公约数(greatest common divisor)缩写为gcd。#includeint ExtendEulide(int a,int b){ return b==0? a:E

2016-09-09 21:58:10 354

原创 iOS获取父控制器swift

最近做项目的时候我将两个控制器的view添加到一个主控制器上(保留两个控制器的对象否则代理啥的都没有),当我在其中两个控制器中push的时候发现不能push。找了半天才发现两个子控制器没有navigationcontroller属性。解决的办法就是在子控制器中获取主控制器,经过和同事的讨论终于解决办法如下/** 用于获取父亲控制器 - param

2016-08-22 19:07:45 2706

空空如也

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

TA关注的人

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