![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法
学海无涯子
汪汪~
展开
-
01-复杂度2. Maximum Subsequence Sum (25)
题目来自网易云课堂的《数据结构习题集》Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, Ni+1, ..., Nj } where 1 Maximum Subsequence is the continuous subsequence w原创 2015-07-26 14:51:26 · 509 阅读 · 0 评论 -
01-复杂度1. 最大子列和问题(20)
#include int main(void){ int K, i, sum = 0, max = 0; printf("Please input K:"); scanf("%d", &K); int a; printf("Please enter in K numbers, split by space:\n"); for(i=0; i<K;原创 2015-07-26 13:49:53 · 520 阅读 · 0 评论 -
二叉搜索树的基本操作(查找、插入、删除)【数据结构】
二叉查找树 二叉查找树(BinarySearch Tree,也叫二叉搜索树,或称二叉排序树Binary Sort Tree)或者是一棵空树,或者是具有下列性质的二叉树: (1)、若它的左子树不为空,则左子树上所有结点的值均小于它的根结点的值; (2)、若它的右子树不为空,则右子树上所有结点的值均大于它的根结点的值; (3)、它的左、右子树也分原创 2015-08-09 16:41:56 · 1253 阅读 · 0 评论 -
二叉树的基本操作(定义、遍历、高度、生成)【数据结构】
二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2^{i-1}个结点;深度为k的二叉树至多有2^k-1个结点;对任何一棵二叉树T,如果其终端结点数为n原创 2015-08-09 16:10:40 · 952 阅读 · 0 评论 -
平衡二叉树的C语言实现(创建、插入、查找、删除、旋转)【数据结构】
平衡二叉树(AVL)或者是一颗空树,或者是具有下列性质的非空二叉搜索树:(1). 任一结点的左、右子树均为AVL树;(2). 任一结点的左、右子树高度差的绝对值不超过1。对于二叉树中任一结点T,其“平衡因子”(Balance Factor, BF)定义为BF(T) = Hl-Hr,其中Hl和Hr分别为T的左、右子树的高度。有了平衡因子的定义,AVL树“任一结点左右子原创 2015-08-10 10:04:32 · 8711 阅读 · 2 评论 -
交换排序:冒泡排序、选择排序【排序算法】
冒泡排序基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。快速排序基本思想:1)选择一个基准元素,通常选择第一个元素或者最后一个元素,2)通过一趟排序讲待排序的记录分割成独立的两部分,其中一部分记录的元素值均比基准元素值小。另原创 2015-09-08 18:02:05 · 1057 阅读 · 0 评论