自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 分治之快速排序

前言分治算法是比较常见的,本文就讲一下分治在快排中的应用。主要步骤快速排序主要分为四个步骤:1.确定分界点,定义一个x,比较常见的有nums[left],nums[right],nums[(left+right)/2],当然也可以是随机一点。2.调整区间:顾名思义,就是将数组以第一步确定的边界值划分为两部分,这也是整个算法最难的一步,这里我介绍一种较好的方法。首先我们定义两个指针i,j;分别指向数组的两端。先看左边的指针i,如果nums[i]<x,我们就执行i++;否则我们就保持i不变

2022-04-19 14:28:56 870

原创 队列(C)

#include<stdio.h>#include<stdlib.h>typedef struct Node{ int data; struct Node* next;}Node;typedef struct Queue{ Node* tailnode; Node* frontnode; int size;}Queue;//创建节点Node* createnode(int data){ Node* newnode=(N

2022-04-17 20:43:31 59

原创 栈代码(C)

#include<stdio.h>#include<stdlib.h>typedef struct Node{ int data; struct Node* next;}Node;typedef struct Stack{ int size; Node* stacktop;}Stack;//创建栈Stack* createstack(){ Stack* mystack=(Stack*)malloc(sizeof(Stack))

2022-04-17 20:42:08 121

原创 链表代码(C)

#include<stdio.h>#include<stdlib.h>typedef struct Node{ int data; struct Node* next;}Node;//打印void printlist(Node* headnode){ Node* pmove=headnode->next; while(pmove!=NULL){ printf("%d\t",pmove->data);

2022-04-17 20:39:02 1000

原创 数组模拟链表【静态链表】

数组模拟链表【静态链表】前言链表实现我们主要通过动态链表,即指针+结构体,但是这种方法存在一定效率问题,例如我们在插入节点时需要创建一个新节点,即new Node,这种方法在c++中比较耗时,当链表中数据量比较大的时候,那么这种实现方法可能会存在超时问题,所以我们在这里引入静态链表,即通过数组模拟链表。一、准备我们这里通过两个数组,一个为data[n]用来表示这个节点的值域,一个为next[n]用来表示当前节点的指针域,在我们这里即下个节点的下标。这两个通过下标n进行关联。最开始的时候,链表的头.

2022-04-17 16:15:05 1072

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除