算法
辞穷
如果你真心想做某事,全世界都会帮你完成。
展开
-
二分搜索(java)
思路: 1 先将输入的数组排序 2 设置中间值mid=(low+high)/2 3 根据中间值将数组分成三部分:(low, mid-1)(mid)(mid+1, high) 4 如果要找的值等于mid,返回中间值 5 如果要找的值小于mid,递归搜索左边的部分(low, mid-1) 6 如果要找的值大于mid,递归搜索右边的部分(mid+1, high)import java.util原创 2017-06-12 20:27:37 · 287 阅读 · 0 评论 -
1011. World Cup Betting (20)
题目:With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excited as the best players from the best teams doing battles for the World Cup trophy in South Africa.原创 2017-08-24 10:28:11 · 255 阅读 · 0 评论 -
活动安排问题的贪心
输入:先输入活动的个数n,然后依次输入每个活动的开始时间si及结束时间fi。如:时间输入格式为:8:30输入为830。注意:所有值都不能随机生成!!! 输出:活动的选择向量,即0,1的集合。如: 1 0 1 0 1或(1,0,1,0,1) 示例:输入:9 800 1030 900 1130 700 1100 1130 1400 1200 1330 1300 1530 1500 1600 1430原创 2017-06-27 19:06:24 · 597 阅读 · 0 评论 -
一般背包贪心
import java.util.Scanner;public class Test { public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); double c=inp.nextDouble();原创 2017-06-27 19:03:41 · 291 阅读 · 0 评论 -
最优二叉搜索树(java)
import java.util.Scanner;public class SearchTree { public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); int b[]=new int[n+1];原创 2017-06-27 18:36:24 · 836 阅读 · 0 评论 -
矩阵连乘(java)
import java.util.Scanner;public class Matrix{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); int p[]=new int[n+1];原创 2017-06-27 18:33:58 · 493 阅读 · 0 评论 -
01背包(java)
import java.util.Scanner;public class Bag01{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); int c=inp.nextInt();原创 2017-06-12 20:49:22 · 439 阅读 · 0 评论 -
矩阵连乘(java)
import java.util.Scanner;public class Matrix{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); int p[]=new int[n+1];原创 2017-06-12 20:50:34 · 526 阅读 · 0 评论 -
斐波那契(java)
import java.util.Scanner;public class Fibonacci{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); System.out.println(F(n));原创 2017-06-12 20:48:04 · 299 阅读 · 0 评论 -
全排列(java)
import java.util.Scanner;public class Test{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); String a[]=new String[n];原创 2017-06-12 20:45:18 · 281 阅读 · 0 评论 -
快速排序(java)
import java.util.Scanner;public class Test{ public static void main(String[] args) { Scanner inp=new Scanner(System.in); int n=inp.nextInt(); int a[]=new int[n]; fo原创 2017-06-12 20:42:23 · 245 阅读 · 0 评论 -
合并排序(java)
思路: 1 设置中间值mid=(left+right)/2用来把原数组分成两个部分(left, mid)(mid+1, right) 2 不断将划分后的的数组分成两部分,直到不能再分(要求leftimport java.util.Scanner;public class Test{ public static void main(String[] args) { Sca原创 2017-06-12 20:40:35 · 373 阅读 · 0 评论 -
找出最大的房子
//找出最大的房子#include<iostream>#include<stack>#include<cstring>using namespace std;int R,C;//行列数int rooms[60][60];//rooms[i][j]表示[i][j]地方对应的房屋数值 int color[60][60];//方块是否染过颜色标记int maxRoomArea=0,room原创 2017-09-26 11:35:57 · 279 阅读 · 0 评论