理工小刘的程序设计学习笔记
2021/7/18 22:09:57
本文主要是介绍理工小刘的程序设计学习笔记,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 前言
- 一、日期:2021/7/18
- 二、问题简要及其笔记
- 1.存在多种情况下的选择问题
- 2.以建立链表为例,对于指针的失效的条件的探究
- 总结
前言
提示:以下是本篇文章正文内容,下面案例可供参考
一、日期:2021/7/18
今日主要讨论了
1.存在多种情况下的选择问题
2.以建立链表为例,对于指针的失效的条件的探究
二、问题简要及其笔记
1.存在多种情况下的选择问题
代码如下(示例):
//定义学生的结构体 struct stu{ int number; int score; }; bool cmp (stu a, stu b){ //如果学生的分数不同则按照分数从大到小排列 if(a.score !=b.score){ return a.score>b.score; } //如果学生的分数相同则按照数字的排序从小到大排序 else{ return a.number<b.number; } } bool cmp (stu a,stu b){ //使用三目运算符可以有效地减少代码的规模 return a.score!=b.score ? a.score>b.score : a.number<b.number; }
2.以建立链表为例,对于指针的失效的条件的探究
代码如下(示例):
ListNode* buildlist (){ ListNode*head = NULL; ListNode* next1 = NULL; ListNode* ll1 =NULL; for(int i = 0;i<3;i++){ ll1 = (ListNode*)malloc(sizeof(ListNode)); if(head==NULL){ head = ll1; }else{ //正确版本 <--------------------------------------------------------------------------------------> next1->next = ll1; <--------------------------------------------------------------------------------------> } ll1->next = NULL; cin>>ll1->val; //正确版本 <--------------------------------------------------------------------------------------> next1 = ll1; <--------------------------------------------------------------------------------------> } return head; } ListNode* buildlist (){ ListNode*head = NULL; ListNode* next1 = NULL; ListNode* ll1 =NULL; for(int i = 0;i<3;i++){ ll1 = (ListNode*)malloc(sizeof(ListNode)); if(head==NULL){ head = ll1; }else{ //错误版本 <--------------------------------------------------------------------------------------> next1 = ll1; <--------------------------------------------------------------------------------------> } ll1->next = NULL; cin>>ll1->val; //错误版本 <--------------------------------------------------------------------------------------> next1 = ll1->next; <--------------------------------------------------------------------------------------> } return head; }
总结
以上就是今天要讲的内容,本文仅仅简单介绍了指针失效的一种常见情况,譬如,在每一次循环进行相关的操作(例如:给节点内部的变量赋值的行为)后,如果需要将此节点与上一个完成相关行为(例如:给节点内部的变量赋值的行为)产生逻辑关系的情况(称之为节点连接问题),不能在每次行为结束(循环结束)的末尾记录本次节点的next的结果,而是应该记录本次节点的结果。
这篇关于理工小刘的程序设计学习笔记的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-26大厂数据结构与算法教程:入门级详解
- 2024-12-26大厂算法与数据结构教程:新手入门指南
- 2024-12-26Python编程入门指南
- 2024-12-26数据结构高级教程:新手入门及初级提升指南
- 2024-12-26并查集入门教程:从零开始学会并查集
- 2024-12-26大厂数据结构与算法入门指南
- 2024-12-26大厂算法与数据结构入门教程
- 2024-12-26二叉树入门教程:轻松掌握基础概念与操作
- 2024-12-26初学者指南:轻松掌握链表
- 2024-12-26平衡树入门教程:轻松理解与应用