- 博客(16)
- 资源 (1)
- 收藏
- 关注
原创 spring-cloud之eureka的注解启动
在使用spring cloud的时候一般使用@EnableEurekaServer首先我们先来了解一下@EnableEurekaServer 我们点击这个注解发现,里面并没有什么代码只有几个注解我们再次点击EurekaServerMarkerConfiguration.class,会发现里面只是注册了一个Bean(Mark.class)其实这个就是启动eureka的开关...
2019-07-18 00:25:38
1356
原创 oracle学习之例外
几个异常:1.No_data_found (没有找到数据)2.Too_many_rows (select ... into 语句匹配多个行)3.被零除 zero_divide4.value_error5.自定义例外------------------------------------------------------系统例外:no_data_foundset SERVEROUTPU
2017-06-28 18:18:50
275
原创 oracle学习之存储过程
--第一个存储过程,打印一个hello world/*调用存储过程:1.exec sayhelloworld();2.begin sayhelloworld(); sayhelloworld(); end; /*/create or replace procedure sayhelloworldas --说明部分begin dbms_output.p
2017-06-28 16:32:06
218
原创 oracle学习之光标
--查询并打印员工的姓名和薪水/*1.光标的属性 %find %notfound %isopen :判断光标是否打开 %rowcount :影响的行数2.光标的限制*/set SERVEROUTPUT ONDECLARE--定义一个光标cursor cemp is select ename,sal from emp;--为光标定义对应的变量pename emp
2017-06-28 16:31:16
326
原创 oracle的学习之基本语法
比较简单直接上代码--使用基本变量类型declare --定义基本变量类型--基本数据类型pnumber number(7,2);--字符串变量pname varchar2(20);--日期变量pdate date;begin pnumber := 1; dbms_output.put_line(pnumber); pname := 'Tom'; db
2017-06-28 16:29:26
229
原创 HDU5971, 2016ACM/ICPC亚洲区大连站第一题
解这题的关键是通过假设先判断,给出的关系中是否能够能够分陪选手危害坏选手,第二部判断已给出的好选手与假设的是否矛盾,若矛盾则假设的之相反,在进行已知坏选手的判断,若矛盾则输出NO;#include<stdio.h>#include<string.h>int main(){ int n,m,x,y,a[1005],c1,c2,c3,flag,flag2; while(scanf(
2016-11-10 12:56:29
396
原创 堆排序
堆排序和快速排序的类似,堆排序主要通过完全二叉树或者是近似完全二叉树,然后移走堆顶元素,重新建堆,重复操作就是了;#include<stdio.h>void siftheap(int r[],int k,int n) //大根堆的实现 { int i,j,temp; i=k;j=2*i+1; //置i为要筛的节
2016-11-03 13:11:23
292
原创 快速排序
该方法的基本思想是:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数#include<stdio.h>int partition(int r[],int first,int end) //划分 { int i=first,j=end;
2016-11-03 12:55:21
200
原创 归并排序
归并排序分治策略的典型题目; 这题相对比较简单主要通过递归调用,吧问题分而治治; 首先考虑下如何将将二个有序数列合并。这个非常简单,只要从比较二个数列的第一个数,谁小就先取谁,取了后就在对应数列中删除这个数。然后再进行比较,如果有数列为空,那直接将另一个数列的数据依次取出即可#include<stdio.h>void merge(int r[],int r1[],int s,int m,int
2016-11-03 12:45:13
197
原创 HDU 1007 通过分治算最近对问题
这题主要就是几何问题中的分治 将集合划分为S1和S2,根据平衡子问题原则,每个子集中大约有N/2个点,设集合S的最近点对为P1和P2; 1.最近点对在集合S1中; 2.最近点对在集合S2中; 3.最近点对在集合S1和S2中; 对于情况1和2比较简单直接递归求解;但第三种情况稍微麻烦一些,在1,2的基础上求中间两边的点距离在1和2中的dmini值内可能存在的情况点,在那这些点进行计算和之进行
2016-11-03 12:31:53
275
原创 hdu1863
直接贴代码#include<stdio.h>#include<algorithm>using namespace std;int bin[5005];struct In{ int p1,p2; int v;}s[5005];bool compare(In a,In b){ return a.v<b.v;}int findx(int x){ int r=x;
2016-09-22 08:43:26
171
原创 hdu1233最短路问题使用
使用并查集加使用克鲁斯卡尔算法,水体直接解;#include<stdio.h>#include<algorithm>using namespace std;int bin[5005];struct In{ int p1,p2; int v; }s[5005];bool compare(In a,In b){ return a.v < b.v;}int find
2016-09-22 08:39:22
236
原创 水体
水体,直接解#include<stdio.h>int bin[1001];int findx(int x){ int r=x; //while(bin[r]!=r) r=bin[r]; if(bin[r]!=r) return findx(bin[r]); return r;}void merge(int a,int b){ int c1,c2;
2016-09-22 08:35:28
318
原创 UVa复合词
通过普通的方法写明显会超时(O(n~2)),但可以通过先把单词放入map中,然后通过对每个单词进行操作,把单词拆成两个能否在map中找到与之匹配的,若匹配输出,(O(mn))以下这段代码为超时的代码#include<stdio.h> #include<vector>#include<queue>#include<map>#include<cstring>#include<sstream>
2016-08-12 10:23:53
348
原创 hdu5773The All-purpose Zero,1257最少拦截次数
这次的两题都是求连续的递增序列,我主要是用求最长连续子序列的方法解决的,核心(int po=lower_bound(ans,ans+len,b[i])-ans;),理解这句代码,节能解决一类题#include<cstring>#include<cstdio>#include<algorithm>using namespace std;int a[100001],ans[100001],b[100
2016-07-31 09:04:10
343
原创 抽屉原理的应用(UVa202,多校HUD5726)
个人对于鸽笼原理(抽屉原理)的理解,抽屉原理对于在写程序中的二重循环的优化还是很有用的,比如2016多校第三次训练的1011(HDU 5726) ,UVa202题中的循环小数,都是比较典型的(抽屉原理主要还是在有范围的或者有隐形范围题中)对于多校1011题,在抽屉原理的应用是,在当输入的组数大于输入的限定范围m的时候必然会存在使其有至少两个点的差为相等的,
2016-07-27 16:14:11
362
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人