队列——Java语言实现

队列 队列是一个有序列表,可以用数组或者链表来实现。 队列遵循先入先出的原则,即:先存入队列的数据先取出,后存入的后取出。 例:用数组实现一个队列 public class ArrQueueDemo { public static void main(String[] args) {...

2019-07-24 16:17:14

阅读数 12

评论数 1

稀疏数组——Java语言实现

稀疏数组: 概念介绍:当一个数组中的大部分元素为0,或者为一个相同的数值时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方法: 1.记录数组的行数,列数,及有多少个不同的数值。 2.把具有不同值的元素的行列及数值记录在一个小规模的数组中,从而缩小数组及程序的规模。 例:二维数组与稀疏数...

2019-07-22 11:44:57

阅读数 11

评论数 0

贪婪算法(贪心算法)之装箱问题--C语言描述

贪婪准则:局部最优。贪婪准则一旦确定,中通不能改变。 贪婪算法不一定能找到最优解,但可以近似最优解 经典问题:装箱问题  1.问题描述        有若干个体积为V的箱子。有N个物品,物品的体积分别为V1,V2直到VN。将所有的物品装入箱子,使打开的箱子尽可能的少。 2.贪婪准则...

2018-12-02 14:15:16

阅读数 836

评论数 0

二叉树的遍历之递归遍历与非递归遍历--C语言描述

二叉树的遍历是二叉数应用的一个基础。而其遍历的方法可以分为递归和非递归,递归遍历相对来说比较简单,本人在另一篇博文中有详细介绍,此文将以前序非递归遍历为例子,给大家展示非递归遍历 其基本思想既创建一个栈以存储数据域的值,以便二叉树的遍历 。 #include <...

2018-11-27 22:43:34

阅读数 47

评论数 0

堆--C语言描述

一. 定义 堆:一个特殊的完全二叉树   (1.)大根堆:根结点的值大于或等于左右结点数据域的值。 (2.)小根堆:根结点的值小于或等于左右结点数据域的值。 二. 堆的创建 步骤:1.创建一个完全二叉树。            2.调整成大(小)根堆。  代码示例如下:此例...

2018-11-25 18:08:06

阅读数 28

评论数 0

C++中利用引用传参

#include <iostream> using namespace std; void swap(int &a, int &b) { int temp = a; a = b; b = tem...

2018-10-27 21:32:21

阅读数 33

评论数 0

搜索二叉树的建立及遍历--C语言描述

#include <stdio.h> #include <stdlib.h> typedef struct node { int date; struct node * left, * right; }...

2018-10-12 22:21:32

阅读数 47

评论数 0

链表的删除--C语言描述

本程序设非空单向链表,且数据域不重复,删除关键字 #include <stdio.h> #include <stdlib.h> #define N 6 typedef struct node { int...

2018-08-31 18:49:58

阅读数 99

评论数 0

创建链表及简单例题--C语言描述

创建单向链表 输出链表 输出尾节点的值 输出节点个数 输出奇数节点的个数 求最大值 逆向输出链表 本链表以储存一整型数据为例,用C语言实现 #include <stdio.h> #include <stdlib.h&...

2018-08-30 19:33:37

阅读数 359

评论数 0

C语言经典例题--冒泡排序

#include <stdio.h> void sort(int * a, int len) { int i, j, t; for (i = 0; i < len - 1; i++) { for (j = 0; j &...

2018-08-05 10:00:26

阅读数 1364

评论数 0

C语言经典例题--结构体指针变量作为函数参数的传递

#include <stdio.h> #include <string.h> struct student { int age; char sex; char name[30]; }; void i...

2018-08-03 17:50:59

阅读数 2688

评论数 0

C语言经典例题--动态构建一维数组

#include <stdio.h> #include <stdlib.h> int main() { int len; int * parr; int i; //录入数组元素个数 printf(...

2018-08-02 13:24:58

阅读数 231

评论数 0

C语言经典例题--利用函数输出一维数组

#include <stdio.h> void outarr(int * parr, int len) { int i; for (i = 0; i < len; i++) { printf("%d\...

2018-08-01 10:28:05

阅读数 940

评论数 0

关于指针的一点心得

如何通过指针同被调函数修改主调函数的普通变量的值 实参必须为普通变量的地址 形参必须为指针变量 在被调函数中通过   *形参名=   的方式修改主调函数中相关变量的值 关于多级指针和跨函数使用内存 void f(int ** q) { int i=5; *q=&amp...

2018-07-31 20:09:31

阅读数 132

评论数 0

C语言经典例题--利用指针交换两个变量的值

利用指针和函数,完成两个变量值得互换 #include <stdio.h> void swap(int * p, int * q) { int t; t = *p; *p = *q; *q = t; } int main() { int...

2018-07-31 19:15:00

阅读数 665

评论数 0

C语言经典例题--统计整数出现次数

输入不确定数量的【0,9】范围内的整数,统计每一个整数出现的次数,输入-1表示结束 #include <stdio.h> int main() { const int number = 10; int x; int i; int count...

2018-07-26 10:18:18

阅读数 2553

评论数 0

C语言经典例题--打印前五十个素数

利用while循环  #include <stdio.h> int main() { int x; x = 2; int cnt = 0; while(cnt<50) { int i; int isPrime...

2018-07-24 10:53:09

阅读数 1186

评论数 0

C语言经典例题--打印100以内的素数

#include <stdio.h> int main() { int x; for (x = 2; x <= 100; x++) { int i; int isPrime=1; for (i = 2; i &...

2018-07-24 10:39:00

阅读数 465

评论数 0

C语言经典例题--判断素数

判断素数 #include <stdio.h> int main() { int n; scanf("%d", &n); int i; int isPrime=1; for (i...

2018-07-24 10:11:11

阅读数 244

评论数 0

C语言经典例题--猜数游戏

猜数游戏 #include <stdio.h> #include <stdlib.h> #include <time.h> int main() { int ...

2018-07-23 20:34:00

阅读数 405

评论数 0

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