
C 语言 & 数据结构
学习《C语言》笔记记录
Briwisdom
这个作者很懒,什么都没留下…
展开
-
C/C++用浮点数指针接收的二进制文件数据
使用fstream读取文件流。先定义一个浮点指针接收数据,然后再read时候通过(char *)以charl类型写入。但是得到的data仍然是float数据。#include<iostream>#include<stdlib.h>#include<fstream>using namespace std;int main(){ float *data=new float[544*960*17]; std::ifstream infile1("./sof原创 2021-07-05 12:59:23 · 775 阅读 · 0 评论 -
C和C++的二进制,八进制,十六进制输出格式(全面版)
目录前言正文示例附录前言一般大家默认二进制,八进制,十进制,十六进制分别用字符:bin, oct, dec, hex 来表示,平时各种计算机语言的默认输出的格式都是十进制的。本文将集中演示C,C++语言的二进制,八进制,十六进制输出的写法。正文十进制转十六进制:C++ 版本 -> cout <<"十六进制:"<< hex <<num<<endl;C 版本 -> pr...原创 2020-12-12 18:16:46 · 47346 阅读 · 2 评论 -
数据结构算法——位运算相关知识及示例
理解位运算的第一步是理解二进制。二进制是指数字的每一位都是1或者0。比如十进制的2转换成二进制之后是10,而十进制的10转换成二进制之后是1010。在程序员圈子中有一则流传了很久的笑话,说世界上有10种人,一种人知道二进制,而另一种人不知道二进制…… 其实二进制的位运算并不是很难掌握,位运算总共只有5种运算:与/或/异或/左移/右移。如下表: 左移运算m<&...原创 2020-03-03 13:41:16 · 654 阅读 · 0 评论 -
学习笔记-C语言8(结构体与链表)
目录结构体结构体的内存结构体的别名结构体的赋值指针与结构体 结构体数组练习-结构体数组排序练习-结构体数组排序的回调函数结构体数组作为函数参数,并返回结构体结构体中的结构体结构体中的指针 动态内存分配结构体链表的引入单链表的定义单链表的初始化与添加节点单链表的查找、打印、释放单链表的节点删除链表算法题:链表逆序(LeetCod...原创 2018-11-23 19:55:49 · 894 阅读 · 0 评论 -
学习笔记-C语言7(函数设计进阶)
目录函数指针函数指针数组函数指针用作函数参数例1-通用的选择排序函数中的静态变量函数间共享变量:全局变量Main函数参数数量可变的函数例2-简单版本的printf函数C语言库函数-快速排序qsortC语言库函数-二分查找bsearch例-火柴棍摆正方形(LeetCode 473. Matchsticks to Square)函数指针函数的内存...原创 2018-11-20 00:10:56 · 523 阅读 · 0 评论 -
Visual Studio 2013运行C/C++程序
0 前言开始学习C/C++了,肯定首先要找一个能运行程序的软件,很多人都有不同的推荐,如devc++、codeblocks,VC++6.0,Visual Studio 20XX,我们本科学习数据结构时候,老师推荐的就是VC6.0,这个是比较经典的工具吧。我个人感觉Visual Studio是在做大型工程项目时候的最佳选择,也有很多人推荐。我在安装VC++6.0时候不知道什么原因出错了,而电脑上...原创 2018-10-30 19:58:33 · 12952 阅读 · 0 评论 -
学习笔记-C语言6(指针与动态内存分配)
指针的引入指针是C语言最强大的功能之一,使用指针可以保存某个变量在内存中的地址,并且通过操作指针来对该片内存进行灵活的操作,例如改变原变量的值,或者构造复杂的数据结构。指针一般初始化为NULL(0)。& 是取地址运算,* 是间接运算符,通过 * 可以访问与修改指针所指的变量值。声明指针变量:变量类型 * 变量名;获取指针指向的变量中存储的值: * 变量名。指向指针的指针存储...原创 2018-10-30 00:14:52 · 1979 阅读 · 0 评论 -
学习笔记-C语言5(算法设计提高)
目录1. 二分查找2. LeetCode 34,Search for a Range(区间查找)3. LeetCode 200. Number of Islands(岛屿数量)算法复杂度是指算法在编写可执行程序后,运行时所需要的时间资源和内存资源。算法设计一般更在意时间和计算资源的开销,而对空间资源则不太介意。1. 二分查找二分查找又称折半查找,首先数组中的元素时按升序排列...原创 2018-10-28 20:46:34 · 485 阅读 · 0 评论 -
学习笔记-C语言2(一维数组与函数初步)
目录1. 数组的初始化2. 最长平台问题3. 基于交换的排序4. 函数初步5. 无重复数字6. 数组作为参数的函数7. 函数的声明:函数原型小贴士:变量名在运行时候不占用内存,在编译的时候要占用内存(编译器要理解字符串文本,需要存储占用内存;翻译成机器码之后是对内存的操作,变量名代表的是一个地址了,就不占内存)1. 数组的初始化注:如果声明了数组后,最好...原创 2018-10-28 14:52:28 · 571 阅读 · 0 评论 -
学习笔记-C语言1(编程入门)
目录1. 文件开头2. 输入输出3. 定义常量4. 变量的类型和转换说明符5. 关系运算符和逻辑运算符及优先级6. if 语句、switch语句、for 语句7.递增与递减云算法8. 算法设计入门9. 哥德巴赫猜想C语言和C++是作为一名程序员必备技能,非科班出身的我对这些语言一直是一知半解,后来更是直接使用简单易上手的python,matlab语言。今...原创 2018-10-27 22:30:15 · 1042 阅读 · 0 评论 -
二叉树基本概念(满二叉树、完全二叉树,满二叉树,二叉树的遍历)
1. 二叉树二叉树是每个节点最多有两个子树的树结构。它有五种基本形态:二叉树可以是空集;根可以有空的左子树或右子树;或者左、右子树皆为空。性质1:二叉树第i层上的结点数目最多为 2{i-1} (i≥1)。性质2:深度为k的二叉树至多有2{k}-1个结点(k≥1)。性质3:包含n个结点的二叉树的高度至少为log2 (n+1)。性质4:在任意一棵二叉树中,若终端结点的个数为n0,度为2的结...转载 2018-10-17 16:03:34 · 6218 阅读 · 0 评论