算法编程
文章平均质量分 56
ITWords
本人主要深入研究语言java、scala,擅长方向大数据开发,java编程,系统建设和架构。
展开
-
java实现合并排序
public static void mergeSort(int[]array){ int length=array.length; int middle=length/2; if(length>1){ int[]left=Arrays.copyOfRange(array,0,middle);//拷贝数组array的左半部分 int[]right=A...原创 2019-08-16 13:34:27 · 139 阅读 · 0 评论 -
Kruskal算法(克鲁斯卡尔算法)
Kruskal算法Kruskal算法是一种用来查找最小生成树的算法,由Joseph Kruskal在1956年发表。用来解决同样问题的还有Prim算法和Boruvka算法等。三种算法都是贪心算法的应用。概念解释Kruskal算法定义:**先构造一个只含 n 个顶点、而边集为空的子图,把子图中各个顶点看成各棵树上的根结点,之后,从网的边集 E 中选取一条权值最小的边,若该条边的两个顶点分属...原创 2019-07-12 23:49:11 · 5236 阅读 · 0 评论 -
Java实现冒泡算法
java实现常用的排序算法排序: 是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列。分内部排序和外部排序,若整个排序过程不需要访问外存便能完成,则称此类排序问题为内部排序。反之,若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,则称此类排序问题为外部排序。内部排序的过程是一个逐步扩大记录的有序序列长度的过程。常用的排序总结复杂度:...原创 2019-05-20 20:38:19 · 248 阅读 · 0 评论 -
遗传算法的实现和具体实现和应用
具体参考文献https://www.sohu.com/a/162408469_465975转载 2019-01-23 11:17:24 · 363 阅读 · 0 评论 -
模拟退火算法
这一篇讲的很不错的文章,所以转载,也希望给大家一些帮助。https://blog.csdn.net/AI_BigData_wh/article/details/77943787转载 2019-01-23 11:01:24 · 152 阅读 · 0 评论 -
螺旋数组
#includeint main(){//声明一个查找函数int find_array(); //n 是声明了一个 int n=0,num=0;scanf("%d",&n);int row=0,column=0;int array[n][n]; //输入一个数组 for(int i=0;ifor(int j=0;jscanf("%d",&num);原创 2017-10-05 16:59:13 · 217 阅读 · 0 评论 -
4Sum
#includeint main(){int a=0,num=0,temp=0;int sum =0;for(;;){printf("请输入数组的个数(偶数):");scanf("%d",&a); if(a%2==0){break; } else{ continue; } }int array[a];int array_1[4];原创 2017-09-30 11:34:18 · 153 阅读 · 0 评论 -
Jump Game
#includeint main(){int num=0,temp=0,p=0;printf("请输入数组的个数:");scanf("%d",&num); int a[num];printf("请输入数组:"); for(int i=0;iscanf("%d",&a[i]);}p=a[temp];for(int i=0;iif(p>num原创 2017-10-09 00:49:57 · 135 阅读 · 0 评论 -
用C语言实现在一个链表删除指定的一个或多个元素
#include#includetypedef struct node{int data;struct node *next;}LinkList;//创建一个链表 LinkList *Creatlist_L(LinkList *L,int n){LinkList *p,*h;L=(LinkList*)malloc(sizeof(LinkList));L->n原创 2017-10-09 00:05:36 · 11670 阅读 · 3 评论 -
用C语言实现两个链表查集
用C语言实现两个链表的查集原创 2017-10-08 11:54:55 · 359 阅读 · 0 评论 -
割数问题——C语言版
割数问题原创 2017-09-20 01:09:59 · 407 阅读 · 0 评论 -
割数问题
package Day9_18;import java.util.Scanner;public class spritData {public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); int a = sc.原创 2017-09-20 01:04:58 · 360 阅读 · 0 评论 -
聪明木匠的切割问题
一位老木匠需要将一根长的木棒切成N段。每段的长度分别为L1,L2,……,LN(1 <= L1,L2,…,LN <= 1000,且均为整数)个长度单位。我们认为切割时仅在整数点处切且没有木材损失。木匠发现,每一次切割花费的体力与该木棒的长度成正比,不妨设切割长度为1的木棒花费1单位体力。例如:若N=3,L1 = 3,L2 = 4,L3 = 5,则木棒原长为12,木匠可以有多种切法,如:先将12切成3+原创 2017-09-13 09:45:00 · 525 阅读 · 0 评论 -
整数转化为罗马数
import java.util.Scanner;public class Integer_to_Romen {//定义0~9个位数String[] str_1={"I","II","III","IV","V","VI","VII","VIII","IX"};//定义10~90整十位数String[] str_10={"X","XX","XXX","XL","L",原创 2017-09-10 09:26:02 · 264 阅读 · 0 评论 -
整数的反序输出
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231,231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。...原创 2019-09-11 19:56:51 · 1472 阅读 · 0 评论