随笔分类 -  OI

摘要:堆 堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。 堆总是满足下列性质: 堆中某个结点的值总是不大于或不小于其父结点的值 堆总是一棵完全二叉树 我们将根结点最大的堆叫做最大堆或大根堆,根结点最小的堆叫做最小堆或小根堆。 堆可以用一维数组作存储结构。或者 阅读全文
posted @ 2022-03-12 21:50 himekawa 阅读(58) 评论(0) 推荐(0)
摘要:高精度加法 string add(string a,string b)//仅限两个非负整数相加 { string ans; int na[L]={0},nb[L]={0}; int la=a.size(),lb=b.size(); for(int i=0;i<la;i++) na[la-1-i]=a 阅读全文
posted @ 2022-03-12 00:26 himekawa 阅读(177) 评论(0) 推荐(0)
摘要:二叉树的定义 二叉树(binary tree)是指树中节点的度不大于2的有序树,它是一种最简单且最重要的树。二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左子树和右子树组成的非空树;左子树和右子树又同样都是二叉树。 满二叉树:如果一棵二叉树只有度为0的结点 阅读全文
posted @ 2022-02-20 08:17 himekawa 阅读(203) 评论(0) 推荐(0)
摘要:1.C风格字符串与C++String类型 在C++中,有两种字符串的表示形式: C风格字符串 C++String类型 C风格字符串 C风格字符串起源于C语言,并在C++中继续沿用。字符串实际上是使用null字符**\0**终止的一维字符数组。因此,一个以null结尾的字符串,包含了组成字符串的字符。 阅读全文
posted @ 2022-02-02 22:46 himekawa 阅读(84) 评论(0) 推荐(0)
摘要:01 文件读写方法 使用C中的freopen()函数进行打开文件并重定向输入输出。如下: #include<iostream> using namespace std; int main() { freopen("testfile.txt","w",stdout); for(int i=0;i<10 阅读全文
posted @ 2022-01-29 22:08 himekawa 阅读(1150) 评论(0) 推荐(1)
摘要:图的定义 点用边连起来就叫做图。严格意义上讲,图是一种数据结构,其定义为:$graph=(V,E)$。 $V$是一个非空有限集合,代表顶点(结点),$E$代表边的集合。 图的一些概念 有向图:图的边有方向,只能按箭头方向从一点到另一点。 无向图:图的边没有方向,可以双向。 结点的度:无向图中与结点相 阅读全文
posted @ 2021-11-08 22:31 himekawa 阅读(505) 评论(0) 推荐(0)
摘要:程序中的所有数在计算机内存中都是以二进制的形式储存的。而位运算就是直接对在内存中的二进制位进行操作。 例如6&2在进行与运算时,6的二进制是0110,11的二进制是1011(运算结果为0010)。 与运算的用处 - 清零 如果想将一个单元清零,即使其全部二进制位为0,只要与一个各位都为零的数值相与, 阅读全文
posted @ 2021-11-07 18:14 himekawa 阅读(275) 评论(0) 推荐(0)