数据结构
文章平均质量分 65
小青头
正在努力学习ing
展开
-
c语言基本语法归纳
c语言基本语法归纳1.define预定义2.数据类型3.函数4.赋值语句5.选择语句if语句switch开关语句6.循环语句for语句while语句do-while语句7.结束语句8.输入输出语句9.注释10.基本函数11.逻辑运算符c语言基本语法归纳本篇文章主要是为了给学习数据结构做一个语言铺垫,简单的归纳一些c语言方面的知识 ...原创 2018-07-23 12:09:58 · 38111 阅读 · 6 评论 -
下面的框架可能不正确和或缺失,没有为 ntdll.dll 加载符号报错
[下面的框架可能不正确和/或缺失,没有为 ntdll.dll 加载符号] 未知在写图代码时遇见这个错误,仔细查找了,原来是m_pMatrix = new int[m_iCapacity]; //初始化内部数据 将所有成员设置为0memset(m_pMatrix, 0, m_iCapacity*m_iCapacity * sizeof(int));申请内存申请少了修改后m_pM...原创 2019-04-19 22:48:56 · 26274 阅读 · 1 评论 -
邻接矩阵实现图
图Node.h#ifndef NODE_H_#define NODE_H_class Node{public: Node(char data = 0); char m_cData; bool m_bIsVisited;};#endif // !NODE_H_Node.cpp#include "Node.h"Node::Node(char data){ m_c...原创 2019-04-19 22:40:07 · 1228 阅读 · 0 评论 -
c++实现常见算法
文章目录排序算法快速排序法:归并排序法冒泡排序法插入排序法选择排序法排序算法冒泡排序,合并排序法,插入排序法,选择排序法,快速排序法快速排序法:1.取左边第一个元素哨兵,从后向前找,比该元素大的,不动;比该元素小的,换位2.哨兵在左边,和最右边比,找小于哨兵的换位3.哨兵在右边,和最左边边,找大于哨兵的换位4.哨兵左边都比其大,右边都比其小;则两边各自做快排demo.cppint...原创 2019-04-23 22:19:53 · 785 阅读 · 0 评论 -
线性表链表实现
线性表链表实现list.h#ifndef LIST_H_#define LIST_H_#include "Node.h"class List{public: List(); ~List(); void ClearList(); bool ListEmpty(); int ListLength(); bool GetElem(int i, Node *pNode); in...原创 2019-04-14 20:41:12 · 332 阅读 · 0 评论 -
二叉树实现(链表实现)
二叉树链表实现node.h#pragma once#ifndef NODE_H_#define NODE_H_class Node {public: Node(); Node *SearchNode(int nodeIndex); void DeleteNode(); void PreorderTraversal(); void InorderTraversal(); v...原创 2019-04-17 13:52:46 · 1089 阅读 · 0 评论 -
数据结构:字符串操作
文章目录字符串操作大小写转换字符串比较函数字符串分割查找算法折半查找猜商品价格字符串操作字符串大小写转换A-Z 65-90a-z 97-122n+32 = N简便方法:使用位运算A 100 0001a 110 0001大写字母二进制第六位始终为0,小写字母为1按位与&:有0得0 小写转大写使用 &101 1111按位或|:有1得1 大写转小写使用...原创 2019-04-25 22:56:02 · 836 阅读 · 0 评论 -
c++实现克鲁斯卡尔算法生成树
普利姆算法图部分代码Edge.h#ifndef EDGE_H_#define EDGE_H_class Edge{public: Edge(int nodeIndexA = 0,int nodeIndexB = 0,int weightValue = 0); int m_iNodeIndexA; int m_iNodeIndexB; int m_iWeightValue; ...原创 2019-04-21 21:12:01 · 662 阅读 · 0 评论 -
c++实现普利姆算法生成树
普利姆算法图部分代码Edge.h#ifndef EDGE_H_#define EDGE_H_class Edge{public: Edge(int nodeIndexA = 0,int nodeIndexB = 0,int weightValue = 0); int m_iNodeIndexA; int m_iNodeIndexB; int m_iWeightValue; ...原创 2019-04-21 21:11:38 · 662 阅读 · 0 评论 -
二叉树(数组形式)
二叉树顺序存储结构相关性质:二叉树的第i层上面最多有2i-1个结点深度为k的二叉树最多有2k-1个结点终端结点(度为0)为n,度为2的结点数为m,则n=m+1具有n个结点的二叉树的深度为(int)(log2n)+1二叉树遍历前序遍历,中序遍历,后序遍历代码Tree.h#ifndef TREE_H_#define TREE_H_class Tree {public:...原创 2019-04-16 22:52:22 · 2632 阅读 · 0 评论 -
使用栈实现进制转换
进制转换链接:栈的实现demo.cpp#include "MyStack.h"/*进制转换*/#define BINARY 2#define OCTONARY 8#define HEXADECIMAL 16int main(void) { char num[] = "0123456789ABCDEF"; MyStack<int> *pStack = new...原创 2019-04-09 22:31:52 · 1845 阅读 · 0 评论 -
c++类模板实现栈
特点:先进后出栈要素:栈顶(会改变),栈底(不会变)栈不是堆栈的代码使用类模板实现栈MyStack.h#ifndef MYSTACK_H#define MYSTACK_Htemplate <typename T>class MyStack {public: MyStack(int size); //分配内存初始化栈空间,设定栈容量,栈顶 ~MyStack...原创 2019-04-08 22:13:40 · 1872 阅读 · 0 评论 -
循环队列C++实现
队列特点:先进先出队列类型:普通队列,环形队列普通队列特点:出队时,队列头前面元素用不了,容易浪费空间环形队列特点:队列头,队列尾都在变化相关代码MyQueue.h#ifndef MYQUEUE_H#define MYQUEUE_H/********************************//*环形队列C++实现*//************************...原创 2019-04-07 22:36:48 · 1552 阅读 · 0 评论 -
栈实现括号匹配
括号匹配链接:栈的实现demo.cpp#include "MyStack.h"#include <stdlib.h>#include <iostream>using namespace std;/*括号匹配[()] [()()] [()[()]]*/ int main() { //扫描字符串中的括号 MyStack<char>*...原创 2019-04-10 23:01:21 · 182 阅读 · 0 评论 -
线性表总结(c语言)
线性表线性表特点存在一个唯一的一个被称作”第一个”的数据元素存在唯一的一个被称做”最后一个”的数据元素除第一个之外,集合中的每个数据元素均只有一个前驱除最后一个之外,集合中每个数据元素均只有一个后继定义一个线性表是n个数据元素的有限序列。 算法设置顺序表和线性链表 #define LIST_INIT_SIZE 100#define LIS...原创 2018-07-26 22:21:00 · 1172 阅读 · 1 评论 -
数据结构简介
绪论基本术语算法设计题1.16试写一个算法,自大至小依次输出顺序读入的三个整数X,Y和Z的值。1.17已知k阶斐波拉切序列的定义为1.18假设有A,B,C,D,E五个高等院校对抗田径赛,各院校的单项成绩均以存入计算机,并构成一张表,表中每一行的形式为1.19试编写算法,计算!*2i(i=0,1,…,n-1)的值并分别存入数组a[arrsize]的各个分量中。假设计算机中允许的整数最...原创 2018-07-25 23:34:28 · 1291 阅读 · 0 评论 -
python实现常见的排序算法
python实现常见的排序算法冒泡排序#冒泡排序def bubble_sort(li): for i in range(len(li) - 1): exchange = False for j in range(len(li) - i - 1): if li[j] > li[j+1]: # > 号升序 <...原创 2019-10-07 13:21:33 · 210 阅读 · 0 评论