- 博客(14)
- 资源 (1)
- 收藏
- 关注
原创 237.删除链表中的节点
解题思路:将node后一个节点p的值赋给node,再将node和p之后的节点连接起来,并不用考虑头节点headstruct ListNode{int val;struct ListNode* next;};void deleteNode(struct ListNode* node){node->val=node->next->val;node->next=node->next->next;}...
2020-05-31 20:35:11 69
原创 C实现链表的各种操作
# include <stdio.h># include <malloc.h># include <stdlib.h>typedef struct Node{ int data; //数据域 struct Node * pNext; //指针域}NODE, *PNODE; //NODE等价于struct Node PNODE等价于struct Node *//函数声明PNODE create_list(void); //创建链表void t
2020-05-30 18:11:38 220
原创 动态数组的实现
常用函数void init_arr(struct Arr *pArr,int length);//初始化bool append_arr(struct Arr *pArr,int val);//追加bool insert_arr(struct Arr *pArr,int pos,int val);//pos的值从1开始,插入bool delete_arr(struct Arr *pArr,int pos,int * Pval);//删除int get();bool is_empty(struct
2020-05-28 18:38:37 137
原创 跨函数使用内存
# include <stdio.h># include <malloc.h>struct Student{ int sid; int age;};struct Student * CreateStudent(void);//函数类型为结构体类型,返回的也是结构体类型void ShowStudent(struct Student *);int main(void){ struct Student * ps; ps = CreateStudent();/
2020-05-28 07:23:38 79
原创 malloc()动态分配内存
# include <stdio.h># include <malloc.h>int main(void){ int a[5] = {4, 10, 2, 8, 6}; int len; printf("请输入你需要分配的数组的长度: len = "); scanf("%d", &len); int * pArr = (int *)malloc(sizeof(int) * len);// *pArr = 4; //类似于 a[0] = 4;// pArr
2020-05-27 20:54:20 180
原创 数据结构概述
概述定义算法(解题方法和步骤)衡量算法的标准数据结构的地位定义我们如何把现实中大量而复杂的问题以特定的数据类型(单个数据怎样存储? )和特定的存储结构( 个体的关系)保存到主存储器(内存)中,以及在此基础上为实现某个功能(比如查找某个元素,删除某个元素,对所有元素进行排序)而执行的相应操作,这个相应的操作也叫算法。(比如班里有15个人,其信息量也许一个数组就搞定了,但是假如10000个,怎么办?内存也许没有这么多连续的空间,所以我们改用链表,you see 这就是与存储有关系。又比如,人事管理
2020-05-26 10:30:51 75
原创 C语言结构体
结构体一.结构体基础知识1.为什么需要结构体2.什么叫结构体3.如何定义结构体4.怎么使用结构体变量赋值和初始化==如何取出结构体中的每一个成员==结构体变量的运算结构体变量和结构体变量指针作为函数形参传递的问题一.结构体基础知识1.为什么需要结构体 为了表示一些复杂的事物,而普通的基本类型无法满足实际要求2.什么叫结构体 把一些基本类型数据组合在一起形成的一个新的复合数据类型,这个叫结构体3.如何定义结构体关于结构体类型的定义的总结:一般格式就是;struct 结构体名(也就
2020-05-23 22:15:42 104
原创 学生信息管理系统
//按学生成绩进行排序# include <stdio.h># include <malloc.h>struct Student{ int age; float score; char name[100];};int main(void){ int len; struct Student * pArr; int i, j; struct Student t; //动态的构造一维数组 printf("请输入学生的个数:\n"); printf("len
2020-05-23 22:12:39 731
原创 通过函数完成对结构体变量的输入和输出
# include <stdio.h># include <string.h>struct Stud{ int age; char sex; char name[100];}; //分号不能省void InputStudent(struct Student *);void OutputStudent(struct Student ss);int main(void){ struct Student st; //15行 InputStudent(&
2020-05-23 21:12:21 2070
原创 交换两个数的值
# include <stdio.h>void huhuan_1(int , int);void huhuan_2(int *, int *);void huhuan_3(int *, int *);int main(void){ int a = 3; int b = 5; huhuan_3(&a, &b); //huhuan_2(*p, *q); 是错误的, huhuan_2(a, b);也是错误的 printf("a = %d, b = %d\n",
2020-05-21 18:31:51 114
原创 C语言的难点 指针
指针指针的重要性指针的定义指针的分类指针的重要性表示一些复杂的数据结构快速的传递数据,减少内存的耗用使函数返回一个以上的值能直接访问硬件能够方便的访问字符串是理解面向对象语言中引用的基础总结:指针是C语言的灵魂指针的定义地址 : 内存单元的编号 从零开始的非负整数 范围:4G[0到4G-1]指针: 指针就是地址,地址就是指针 指针变量就是存放内存单元编号的变量,或者说指针变量就是存放地址的变量 指针和指针变量是两个不同的概念 注意:通常我们叙述时会把指针
2020-05-21 18:28:50 540
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人