- 博客(11)
- 收藏
- 关注
原创 java基础(一)
一.面向对象1. == 和 equals 方法==是判断两个变量或实例是不是指向同一个内存空间,equals是判断两个变量或实例所指向的内存空间的值是不是相同 ==是指对内存地址进行比较 ,equals()是对字符串的内容进行比较 ==指引用是否相同,equals()指的是值是否相同public class basis { public static void ma...
2019-07-30 17:38:48 107
原创 java实现有权图中的最短路径问题--迪杰斯特拉算法(Dijkstra)
1.什么是Dijkstra算法Dijkstra算法,是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题(应用于无权图或所有边权相等的图时,等同于BFS)。其主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。2.算法思想把顶点集合V分成两组:(1)S:已求出的顶点的集合(初始时只含有源点V0)(2)V-S=T:尚未确定的顶点集合将T中顶点按递增...
2019-07-19 20:38:13 558
原创 链表的插入与删除
插入:#include <stdio.h>#include <stdlib.h>#include <malloc.h>typedef struct node{ int data; struct node *next;}NODE;NODE *create(int n){ int a; NODE *head,*p,*q; head=NU...
2019-03-02 23:42:06 99
原创 创建链表的方法
头插法:#include<stdio.h>#include<stdlib.h>struct node{ int date; struct node *next;};int main(){ struct node *head,*p; int i,j,n; scanf("%d",&n); head = (struct node *)mall...
2019-03-02 23:29:29 134
原创 图的广度优先遍历--(最少转机)
小哼和小哈一同坐飞机去旅游,他们位于1号城市,目标城市是5号,可是飞机并没有从1号到5号的直航,请问他们最少要转几次机。第一行输入四个数,n个城市,m条航线,start为起点城市,end为目标城市。接下来m行每行是类似于a,b这样的数据表示城市a和城市b之间有航线。还是使用邻接矩阵来存储图,这里是无向图。城市的编号是图的顶点,航班是两顶点之间的边。令所有边的长度为1。#inclu...
2019-03-02 23:24:16 465
原创 图的深度优先遍历--(城市地图)
第一行输入城市个数n和公路条数m。接下来m行有a,b,c三个数据。表示有一条公路可以从城市a到城市b,并且路程为c公里。现在求出从1~n的最短路程。我们可以用一个矩阵(二维数组e)来存储这些信息。e【a】【b】=c 若无法到达 则e【a】【b】=99999999即为正无穷。#include<stdio.h>int min=99999999,book[101],n...
2019-03-02 23:13:39 596
原创 广度优先搜索遍历无向图
主要思想:首先以一个未被访问过的顶点作为起始顶点,访问其所有相邻的顶点,然后对每个相邻的顶点,再访问他们相邻的未被访问过的顶点,直到所有的顶点都被访问过,遍历结束。#include<stdio.h>int main(){ int i,j,n,m,a,b,cur,book[101]={0},e[101][101]; int que[10001],head,tail; sc...
2019-03-02 22:43:17 961
原创 深度优先搜索遍历无向图
主要思想:首先以一个未被访问过的顶点作为起始顶点,沿当前顶点的边走到未访问过的顶点;当没有未访问过的顶点时,则回到上一个顶点,继续试探访问别的顶点,直到所有的顶点都被访问过。#include<stdio.h>int book[101],sum,n,e[101][101];void dfs(int cur)//cur是当前所在的顶点编号 { int i; printf("...
2019-03-02 22:37:11 533
原创 深度优先搜索(DFS)与广度优先搜索(BFS)
DFS(全排列):输入一个数n,输出1~n的全排列。#include<stdio.h>int a[10],b[10],n;void dfs(int step){ int i; if(step==n+1){ for(i=1;i<=n;i++){ printf("%d",a[i]); } printf("\n"); return; } ...
2019-03-02 22:28:36 123
原创 结构体排序
定义一个结构体,把人名按字典顺序排序并输出#include<stdio.h>#include<string.h>struct stu{ char name[50];}s[50];void sort(struct stu *s,int n){ int k,j; struct stu t; for(k=0;k<n;k++) { for(j=k+...
2018-12-23 21:48:42 106
原创 数组移动
定义一个数组,输入一个整数n,n为数组元素个数。输入一个非负整数k,使得数组中元素向右移动k个。代码一:两层循环#include<stdio.h>int main() { int a[100],n,k,i,j,t; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d ",&a[i]); } scanf(...
2018-12-23 21:43:54 1557
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人