数据结构
文章平均质量分 83
青果HA
☀
展开
-
编程实现数据结构线性表基本操作
这个代码主要实现了1 线性表的创建,插入,删除函数等2 主函数调用上面的函数#include<stdio.h>#include<stdlib.h>#include<stdlib.h>#include<malloc.h>struct LinearList /*定义线性表结构*/{ int *list; /* 存线性表元素 *...原创 2018-03-26 17:15:05 · 2664 阅读 · 0 评论 -
希尔排序
希尔排序,看这个就可以,简单明了def ShellInsetSort(array, len_array, dk): # 直接插入排序 for i in range(dk, len_array): # 从下标为dk的数进行插入排序 position = i current_val = array[position] # 要插入的数 ...原创 2018-07-31 22:34:21 · 545 阅读 · 0 评论 -
选择排序算法——C
从当前未排序的整数中选出一个最小的整数,将它放在已排序的整数列表的最前面 选择排序选最小的,往左边选 冒泡排序与选择排序从n个元素序列中,选择最小的元素,并且将它放在序列的最前面;第一趟排序,把第一个元素与后面的元素逐个进行n-1比较,选出最小的元素,把它与第一个元素的位置互换第二次排序,从第二个元素与后面的元素逐个进行n-2比较,选出第二小的元素,把它与第二个元素的位置互换以此...原创 2018-05-07 17:37:49 · 268 阅读 · 0 评论 -
冒泡排序算法——C
简单但效率低 从左到右扫描数据,选择最大的数据,放在右边 要点:比较相邻的两个数,如果左边的数大于右边的数就进行交换 假设数组中有n个等待比较的元素,当第一趟排序结束之后,会将最大的元素移到序列的末尾;当第二趟排序结束之后,会将次大的元素移到序列的n-1个位置;当经过n-1次排序之后,就完成了冒泡排序~C实现如下:需要2个循环一趟:1跟2 ,2跟3, 3跟4,4跟5, 5跟6, 6跟7...原创 2018-05-07 17:01:07 · 246 阅读 · 0 评论 -
插入排序算法——python和C
插入排序可以看做是,把从左到右的数据依次看做是进入室内的人(室外的人),每进一个人,都需要依次跟室内的人进行比较,如果大于室内的人,则排在队尾~否则,交换位置C实现如下:#include<stdio.h>#include<stdlib.h>void insertionsort(int *a, int n);int main(){ int i; in...原创 2018-05-07 16:21:56 · 242 阅读 · 0 评论 -
快速排序算法——python和C
最流行的的排序算法,速度最快的排序算法(递增顺序) 1962年C.A.R.Hoarse发明的快速排序算法 pivot:枢轴,枢纽(基元素) 递归方法 假设有N个元素序列,存放在数组,数组的索引号为1~n:假设以第一个元素为枢轴元素(参考元素),即pivot=a[1],令两个索引下标 i=1;j=n 从序列的最后一个位置,从左往右依次将当前元素的关键字与枢轴元素的关键字...原创 2018-05-07 14:54:15 · 382 阅读 · 0 评论 -
数据结构实现单链表的基本操作
该程序在vs2013中完成!!!单链表的基本函数:#include<stdio.h>#include<malloc.h>typedef char ElemType;typedef struct LNode{ ElemType data; struct LNode *next;} LinkList;void InitList(LinkList *&L...原创 2018-04-01 19:58:29 · 1159 阅读 · 0 评论 -
数据结构实现以较高的效率实现删除线性表中元素值在x到y(x和y自定)之间的所有元素。
以较高的效率实现删除线性表中元素值在x到y(x和y自定)之间的所有元素。#include<stdio.h>#include<stdlib.h>#define X 10#define Y 30#define N 20int A[N] = { 2, 5, 15, 30, 1, 40, 17, 50, 9, 21, 32, 8, 41, 22, 49, 31,...原创 2018-03-26 18:55:01 · 3550 阅读 · 0 评论 -
数据结构实现将两个数组合并成一个数组
vs2013数据结构实现将两个数组合并成一个数组#include<stdio.h>#include<stdlib.h>#include<malloc.h>struct LinearList{ int * list; int size; int MaxSize;};int main(){ int list1[15] = { 2, 5, 7, ...原创 2018-03-26 18:52:01 · 4189 阅读 · 0 评论 -
数据结构题集
某二叉查找树的每个节点存放一个整数,中序遍历该树得到的序列为3,4,5,则该树的画法有多少种情况? 对于最大堆64,42,58,23,36,47,56,11,22,27,4,2;删除掉最大元素后,调整后堆中元素为? 堆树的定义如下:(1)堆树是一颗完全二叉树;(2)堆树中某个节点的值总是不大于或不小于其孩子节点的值;(3)堆树中每个节点的子树都是堆树。最大...原创 2018-08-13 21:12:44 · 1720 阅读 · 0 评论