ARTS打卡第四周之删除链表倒数第几个节点、gdb start命令、扩散模型、如何学习分享

Algorithm

题目:删除链表倒数第 n 个结点
分析:可以把通过两个结点进行标记,有一个节点需要遍历得快点,简称为快结点,有个结点遍历得慢,简称为慢结点。快结点先停在正数第 n 个结点处,然后快慢结点同时往后边遍历,直到快结点走到最后结点,那么慢结点就会走到需要删除结点的上一个结点,然后进行删除。
代码:

#include <stdio.h>
#include <stdlib.h>typedef struct DataNode{int data;struct DataNode* next;
}node;int main(int argv,char *argc[]) {int nodeTotal = atoi(argc[1]);int indexOfCountBackwards = atoi(argc[2]);if(indexOfCountBackwards>nodeTotal){printf("倒数索引不能大于节点个数");return 0;}node* head = NULL;node* recordNode = NULL;// 创建链表for(int i=nodeTotal;i>0;i--){node* newNode = (node *)malloc(sizeof(node));;newNode->next = NULL;newNode->data = i;if(i==nodeTotal){head = newNode;recordNode = newNode;}else{recordNode->next = newNode;recordNode = recordNode -> next;}}node* nodeBeforeDeleting = head;recordNode = head;for(int deleteIndex=indexOfCountBackwards;deleteIndex>0;deleteIndex--){recordNode = recordNode->next;}while(recordNode->next!=NULL){recordNode = recordNode->next;nodeBeforeDeleting = nodeBeforeDeleting->next;}recordNode=nodeBeforeDeleting->next;nodeBeforeDeleting->next = nodeBeforeDeleting->next->next;recordNode->next = NULL;// 不要忘记释放删除节点所占的内存free(recordNode);recordNode = head;while(recordNode!=NULL){printf("%d\n", recordNode->data);recordNode = recordNode->next;}return 0;
}

注意,我这段代码需要传入两个参数,链表的结点个数和需要删除结点的倒数位置。

Review

《start command》里边写了在gdb里边start命令的使用,我用来演示的代码gdbStart.c如下:

#include <stdio.h>
#include<stdlib.h>int main(int argc, char *argv[]) {for(int i=0;i<argc;i++){printf("%s\n",argv[i]);}
}

gcc -g gdbStart.c -o gdbStart带有编译信息进行编译。
在这里插入图片描述

Technique/Tip

DALL-E 2ImagenStable Diffusion这些大名鼎鼎的模型背后是扩散模型。扩散模型中有加噪过程和去噪过程。

加噪过程

对于加噪过程,每一步的加噪结果是可以根据上一步的加噪结果和当前时间步 t 计算得到的,计算公式如下所示。
xt​= α t \sqrt{α_t} αt xt−1​+ 1 − α t \sqrt{1−α_t} 1αt ϵ
公式中,xt−1​​ 表示第t步的加噪结果;xt−1​​ 表示第 t-1 步的加噪结果; α t \sqrt{α_t} αt 是一个预先设置的超参数,用于控制随时间步的加噪强弱,你可以理解为预先设定从 α1​ 到 α1000​ 1000 个参数;ϵ 表示一个随机的高斯噪声。

去噪过程

去噪的过程包括两层含义:
1.如何根据当前时间步的噪声图预测上一步加入的噪声?
2.如何在当前时间步的噪声图上去除这些噪声?

关于第一层含义,主流的做法是使用深度学习算法,训练一个 UNet 模型,从而可以输入第 t 步加噪结果和时间步 t,预测从第 t-1 步到第 t 步噪声值。
关于第二层含义:使用采样器去除噪声

Share

《如何学习》的总结如下:
记忆由提取和储存两种能力组成。事情储存在大脑中就不会被遗忘。我们以为的忘记了其实是提取能力减弱。但我们回忆起快要被遗忘的事情时,这件事就会被记忆得更牢固。为了增强记忆力,我们要打断环境的一贯性,让大脑记住更多环境信息,增强提取能力。也可以拉长复习的间隔时间,或进行自我测试。面对复杂问题,我们可以采取交替学习的方式来强化自己对知识的理解。或是用打断、激活和反思来找到灵感。同时我们可以根据问题类型来选择睡眠时间来保障最良好的发挥。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/77650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯打卡Day7

文章目录 阶乘的末尾0整除问题 一、阶乘的末尾0IO链接 本题思路&#xff1a;由于本题需要求阶乘的末尾0&#xff0c;由于我们知道2*510可以得到一个0&#xff0c;那么我们就可以找出2的数和5的数&#xff0c;但是由于是阶乘&#xff0c;所以5的数量肯定是小于2的数量&#xf…

车载Android应用开发与分析 - 初试 SystemUI Plugin

在前面的视频、文章中我们介绍完了整个车载Android应用开发所需要的基础知识&#xff1a; 【视频文稿】车载Android应用开发与分析 - 走进车载操作系统 - 掘金【视频文稿】车载Android应用开发与分析 - AOSP的下载与编译 - 掘金【视频文稿】车载Android应用开发与分析 - 开发系…

Elasticsearch:为具有许多 and/or 高频术语的 top-k 查询带来加速

作者&#xff1a;Adrien Grand Disjunctive queries&#xff08;term_1 OR term_2 OR ... OR term_n&#xff09;非常常用&#xff0c;因此在提高查询评估效率方面它们受到了广泛关注。 Apache Lucene 对于评估 disjunctive queries 有两个主要优化&#xff1a;一方面用于详尽评…

opencv(python)视频按帧切片/cv2.VideoCapture()用法

一、介绍 cv2.VideoCapture是OpenCV中一个用于捕捉视频的类。它可以访问计算机的摄像头&#xff0c;或从视频文件中读取图像。通过cv2.VideoCapture&#xff0c;用户可以轻松地捕捉、保存、编辑和传输视频流数据。 使用cv2.VideoCapture可以实现以下功能&#xff1a; 1. 打开…

计算机网络第四节 数据链路层

一&#xff0c;引入数据链路层的目的 1.目的意义 数据链路层是体系结构中的第二层&#xff1b; 从发送端来讲&#xff0c;物理层可以将数据链路层交付下来的数据&#xff0c;装换成光&#xff0c;电信号发送到传输介质上了 从接收端来讲&#xff0c;物理层能将传输介质的光&…

【Vue】一文让你进入Vue的大门

Vue简介 官网 ● 英文官网 ● 中文官网 介绍与描述 Vue历史 Vue 是一套用来动态构建用户界面的渐进式JS框架 构建用户界面&#xff1a;把数据通过某种办法变成用户界面 渐进式&#xff1a;Vue可以自底向上逐层的应用&#xff0c;简单应用只需要一个轻量小巧的核心库&#xff0c…

python 语法入门

文章目录 前言python 语法入门1. 语句分隔符2. 注释3. pep8规范4. 变量5. 扩展5.1. 运行此行代码的过程 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会…

【LeetCode刷题篇零】一些基础算法知识和前置技能(下)

数组常用技巧 使用数组代替Map 使用另一个数组来统计每个数字出现的次数&#xff0c;数组的下标作为key, 数组的值作为value&#xff0c; 将数字作为数组的下标索引&#xff0c;数组里的值存储该数字出现的次数&#xff0c;原理有点类似桶排序中使用的计数数组。 比如这里如…

小程序赖加载刷新数据页面数据堆叠问题debug

目录 项目所需 原生写赖加载存在的bug 解决问题思路及代码实现 思路&#xff1a; 代码实现&#xff1a; 列表.wxml 列表.js Wenjain_shanchu.js Wenjain_shanchu.json Wenjain_shanchu.wxml shouye.js ⭐️ 好书推荐 【内容简介】 项目所需 某高校大一新生入学&am…

EasyPHP-Devserver-17安装和配置mantisBT

文章目录 1、准备工作2、安装easyphp2.1 http://127.0.0.1 无法访问 3、安装mantisBT和phpMyAdmin3.1 配置浏览器的访问url和端口号&#xff08;配置局域网内可访问&#xff09;3.2 安装mantis 4、Administrator 注册新用户时设置登录密码5、附件上传6、邮件配置 文章参考自&am…

【广州华锐互动】煤矿提升机作业VR互动实训平台

在煤矿行业中&#xff0c;安全性是无可忽视的首要任务。传统的煤矿工人培训方法&#xff0c;如理论课堂讲解、实地操作演示&#xff0c;尽管具有一定的效果&#xff0c;但往往无法真实地模拟出煤矿的复杂环境&#xff0c;工作人员在没有真正接触煤矿的情况下&#xff0c;很难理…

【LLM】Windows本地CPU部署民间版中文羊驼模型(Chinese-LLaMA-Alpaca)踩坑记录

目录 前言 准备工作 Git Python3.9 Cmake 下载模型 合并模型 部署模型 前言 想必有小伙伴也想跟我一样体验下部署大语言模型, 但碍于经济实力, 不过民间上出现了大量的量化模型, 我们平民也能体验体验啦~, 该模型可以在笔记本电脑上部署, 确保你电脑至少有16G运行…

【GO语言基础】变量常量

系列文章目录 【Go语言学习】ide安装与配置 【GO语言基础】前言 【GO语言基础】变量常量 【GO语言基础】数据类型 文章目录 系列文章目录常量和枚举变量声明全局变量声明大小写敏感 总结 常量和枚举 使用const关键字声明常量&#xff0c;并为每个常量提供显式的值。Go语言没有…

嵌入式学习笔记(26)5S5PV210串行通信编程实战

5.5.1整个流程分析 整个串口通信相关程序包含2部分&#xff1a;uart_init负责初始化串口&#xff0c;uart_putc负责发送一个字节 5.5.2串口初始化关键步骤 &#xff08;1&#xff09;初始化串口的Tx和Rx引脚所对应的GPIO(查原理图可知Tx和Rx分别对应GPA0_1和GPA0_0) &#…

解决“您在 /var/spool/mail/root 中有新邮件”问题

一、发现问题 二、解决问题 1、删除邮件 cat /dev/null > /var/spool/mail/root 2、禁止系统启动邮件检查 echo "unset MAILCHECK" >> /etc/profile 三、解决结果

Matplotlib | 高阶绘图案例【3】- 五大战区高校排名

文章目录 &#x1f3f3;️‍&#x1f308; 1. 导入模块&#x1f3f3;️‍&#x1f308; 2. 数据处理2.1 高效数据2.2 学校排名 &#x1f3f3;️‍&#x1f308; 3. 绘图3.1 绘制图布&#xff0c;设置极坐标系3.2 绘制学校排名柱状图3.3 绘制五大战区扇形区域3.4 添加战区、学校…

Pytest系列- assert断言详细使用(4)

简介 在断言方面&#xff0c;pytest框架比其他类似的框架&#xff08;比如unittest&#xff09;更加简洁&#xff0c;易用&#xff0c;我想这是选择pytest作为自动化测试框架之一的原因之一。pytest的assert断言关键字支持使用python内置的assert表达式。可以理解为pytest的断…

数据结构题型6-后插结点操作

#include <iostream> //引入头文件 using namespace std;typedef int Elemtype;#define Maxsize 100 #define ERROR 0 #define OK 1typedef struct LNode {Elemtype data;//数据域struct LNode* next;//指针域 }LNode, * LinkList;bool InitList(LinkList& L) …

PMP认证可以用来干什么呢?

PMP(项目管理专业人士&#xff09;认证是一项国际上广为认可的专业认证&#xff0c;具有以下几个重要用途和好处&#xff1a; 1. 提升职业竞争力&#xff1a; PMP认证是项目管理领域具有权威性和声誉的认证之一。持有PMP认证可以证明你具备了相关知识、技能和经验&#xff0c…

【hive】列转行—collect_set()/collect_list()/concat_ws()函数的使用场景

文章目录 一、collect_set()/collect_list()二、实际运用把同一分组的不同行的数据聚合成一个行用下标可以随机取某一个聚合后的中的值用‘|’分隔开使用collect_set()/collect_list()使得全局有序 一、collect_set()/collect_list() 在 Hive 中想实现按某字段分组&#xff0c…