极值 洪水 语言 结构

小工具 --- 树形展示多属性复杂结构类

## 灵感 最近在做配置模块,然后整个配置的参数是非常多的,层级结构也很深。可能有几百个参数,三、四层的层级关系,想要捋顺所有的类和参数,太繁琐了,而且 Visual Studio 的类视图只能看到属性,却看不出层级关系来,所以花费些许精力,写一个控制台小程序,展示类结构。 原理就是通过反射得到所有 ......
树形 属性 结构 工具

如何在C语言中实现队列和堆栈的动态扩容

如何在C语言中实现队列和堆栈的动态扩容 队列和堆栈是在C语言中常用的数据结构,它们可以帮助我们高效地处理数据。然而,在实际编程中,我们经常会遇到数据量超过容量限制的情况。这时,我们需要实现队列和堆栈的动态扩容,以满足实际需求。 6如何在C语言中实现队列和堆栈的动态扩容 动态扩容是指在数据结构的容量不 ......
堆栈 队列 语言 动态

数据结构与算法 --- “哨兵”思想

## 引言 哨兵思想是指在算法中使用一个特殊值来检测或标记某些条件的发生,它的目的是为了简化代码,并使其更容易理解,常常用于在循环中优化边界条件的判断。 ## 介绍 在算法中,"哨兵"思想是指在循环中设置一个特殊的元素(称为哨兵),以便在循环过程中能够更高效地处理某些边界情况或结束条件。 这种思想可 ......
哨兵 数据结构 算法 思想 结构

数据结构与算法 --- 递归(一)

## 什么是递归? **递归(Recursion)** 是一种解决问题的方法,它将问题分解为更小的子问题,并逐层解决这些子问题。递归算法的核心思想是:**一个函数可以直接或间接地调用自身**。通过这种自我调用,我们可以用简洁的代码来解决复杂问题。 ## 满足递归的条件 一般来说,满足下面三个条件就可 ......
数据结构 算法 结构 数据

数据结构与算法 --- 递归(二)

## 引言 上文[数据结构与算法 递归(一)](https://niuery.com/post/51) 讲述了什么是递归算法,如何编写递归算法及如何写好递归算法,本文着重讲述一下如何避免递归过深导致的堆栈溢出问题。 ## 探究产生堆栈溢出的原因 函数调用采用**函数调用栈**来保存当前“快照”(局部 ......
数据结构 算法 结构 数据

数据结构与算法 --- 排序算法(一)

## 引言 按照时间复杂度,将一些常见排序算法进行分类,分为以下三类: - $O(n^2)$:冒泡排序,插入排序,选择排序。 - $O(nlogn)$:快速排序,归并排序。 - $O(n)$:桶排序,计数排序,基数排序。 本篇文章讨论以下第一类:冒泡排序,插入排序,选择排序。 上一篇[数据结构与算法 ......
算法 数据结构 结构 数据

数据结构与算法 --- 排序算法(二)

title: 数据结构与算法 排序算法(二) category: 数据结构与算法 tags: 算法 updatedAt: 2023-05-18T15:29:17.847Z createdAt: 2023-05-13T14:43:31.656Z ## 引言 上一篇[数据结构与算法 排序算法(一)](h ......
算法 数据结构 结构 数据

数据结构与算法 --- 组数、链表、栈和队列(一)

数组、链表、栈和队列是四种基础数据结构,他们是高级、复杂的数据结构和算法的基础。本篇先来讲述**数组,链表,及算法的优化策略**。 ### 数组 #### 定义 **数组:数组是一种线性表数据结构,它用一组连续的内存空间存储一组具有相同类型的数据。** 定义中有三个关键词: - **线性表** - ......
数据结构 队列 算法 结构 数据

数据结构与算法 --- 组数、链表、栈和队列(二)

继[数据结构与算法 组数、链表、栈和队列(一)](https://niuery.com/post/41)讲解完数组,链表及算法的优化策略之后,接下来继续讲解**两种特殊的线性表结构,栈和队列**。 ## 栈 对“栈”有一个很形象的比喻,栈就像一摞叠在一起的盘子,放盘子时,只能放在上面,不能将盘子插入 ......
数据结构 队列 算法 结构 数据

数据结构与算法 --- 算法绪论

# 开场白 算法介绍从一个简单加法开始,现要求写一个求1+2+3+..+100的结果的程序,那我可以这样写: ```csharp int count = 100; int sum = 0; for (int i =1; i 这就是最简单的程序之一,这就是算法。但是它是最优的吗?是最高效的吗? 儿时数 ......
算法 数据结构 绪论 结构 数据

数据结构与算法 --- 复杂度分析专题(一)

## 意义 算法复杂度分析的意义在于评估算法的执行效率,找出最优解决方案,是优化算法和改进程序性能的基础。通过对算法的时间复杂度和空间复杂度进行分析,可以帮助我们预估该算法运行所需的资源,从而提高程序的性能。 ## 大O复杂度表示法 ### 例1 有如下代码 ```csharp 1 public i ......
复杂度 数据结构 算法 结构 专题

数据结构与算法 --- 复杂度分析专题(二)

title: 数据结构与算法 复杂度分析专题(二) category: 数据结构与算法 tags: 算法 updatedAt: 2023-05-13T12:54:18.943Z createdAt: 2023-04-09T13:52:05.115Z ## 引言 在上一篇[复杂度分析专题(一)](ht ......
复杂度 数据结构 算法 结构 专题

虚位密码验证 保护C语言程序的数据安全性。

7位密码验证:保护C语言程序的数据安全性 密码验证是程序开发过程中保护数据安全性的重要环节。在C语言编程中,我们可以通过实现7位密码验证系统来提高程序的安全性。本文将介绍如何设计和实现这个系统,并讨论它对数据安全性的作用。 7虚位密码验证 保护C语言程序的数据安全性。 首先,我们需要定义一个密码验证 ......
语言程序 安全性 密码 语言 程序

C语言中如何进行动态内存分配和释放

动态内存分配和释放是C语言中非常重要的概念,它允许在程序运行时动态地申请和释放内存空间,提高程序的灵活性和效率。本文将围绕这一主题,详细介绍C语言中如何进行动态内存分配和释放。 在C语言中,动态内存分配和释放主要通过malloc()和free()函数实现。malloc()函数用于申请一块指定大小的内 ......
内存 语言 动态

如何在C语言中进行图形界面编程

在C语言中进行图形界面编程是一项非常有挑战性和有趣的任务。虽然C语言主要用于系统级编程和算法开发,但我们仍然可以使用一些库来实现简单的图形界面。在本文中,我将介绍一种在C语言中进行图形界面编程的方法。 首先,让我们来了解一下几个常用的图形库,它们可以帮助我们在C语言中创建图形界面。其中最常用的是图形 ......
图形 界面 语言

C语言中的排序算法及其实现方法

C语言中的排序算法及其实现方法 排序算法是计算机科学中的重要部分,它们在数据处理和算法设计中起着关键作用。在C语言编程开发中,掌握不同的排序算法及其实现方法对于提高代码质量和性能至关重要。本文将围绕C语言中的排序算法展开讨论,介绍几种常见的排序算法及其实现方法。 1C语言中的排序算法及其实现方法 首 ......
算法 语言 方法

如何在C语言中进行日期和时间处理

如何在C语言中进行日期和时间处理 日期和时间处理在许多软件和应用程序中都是非常重要的功能。无论是计算两个日期之间的天数,还是计算某个日期是星期几,C语言提供了丰富的库函数和功能来满足这些需求。本文将介绍如何在C语言中进行日期和时间处理。 18如何在C语言中进行日期和时间处理 1. 获取当前日期和时间 ......
日期 语言 时间

利用C语言实现简单的计算器程序

利用C语言实现简单的计算器程序 在日常生活中,计算器是一个不可或缺的工具。它可以帮助我们进行各种数学计算,从简单的加减乘除到复杂的三角函数和指数运算。而使用C语言编写一个简单的计算器程序,则是一个很有挑战性和有趣的任务。 1利用C语言实现简单的计算器程序 首先,我们需要明确计算器的基本功能。一个简单 ......
计算器 语言 程序

使用C语言编写文件读写工具

使用C语言编写文件读写工具 在现代软件开发中,文件读写是一个非常常见且重要的操作。通过使用C语言编程,我们可以轻松地实现文件的读取和写入。本文将介绍如何使用C语言编写文件读写工具,以及一些相关的注意事项。 2使用C语言编写文件读写工具 首先,我们需要包含头文件stdio.h,这个头文件包含了一些用于 ......
语言 文件 工具

C语言编程教程:如何提取手机尾数

C语言编程教程:如何提取手机尾数 在C语言编程中,我们经常需要处理各种数据类型和操作。今天,我们将分享一个有趣且实用的主题:如何提取手机尾数。手机尾数是手机号码中的最后几位数字,提取这些数字可以为我们的程序带来更多可能性。在本文中,我们将介绍一种简洁而有效的方法,帮助你轻松提取手机尾数。 3C语言编 ......
尾数 语言编程 语言 教程 手机

Switch 分支结构

# Switch 分支结构 ## 基本结构 switch(表达式){ ​ case: 常量1:语句块1; ​ case: 常量2:语句块2; ​ case: 常量3:语句块3; ​ ...... ​ default: ​ default 语句块; ​ break; } 1. 表达式应当是一个具体的值 ......
分支 结构 Switch

LeetCode 7022——熟悉TreeSet数据结构及常用方法的使用

LeetCode 7022. 限制条件下元素之间的最小绝对差 题目描述: 给你一个下标从 0 开始的整数数组 nums 和一个整数 x 。 请你找到数组中下标距离至少为 x 的两个元素的 差值绝对值 的 最小值 。 换言之,请你找到两个下标 i 和 j ,满足 abs(i - j) >= x 且 a ......
数据结构 LeetCode 常用 TreeSet 结构

c语言笔记2

# c语言笔记2(关键字,数据类型,运算符,流程控制语句) ## 1. c语言中的关键字 > 学习关键字的目的是了解存在哪些关键字,另外,在定义变量名、函数名(标识符命名)避免使用关键字 ### 1.1 数据类型相关的关键字 ``` char 字符类型,占1个字节,ASCII表有128字符,每个字符 ......
语言 笔记

Redis(九)五种数据类型的底层结构

### Redis(九)五种数据类型的底层结构 #### 1 string ​ string是redis中最常见的数据类型 - 基本编码方式是`RAW`,基于`简单动态字符串(SDS)`实现,存储上限为512MB,此时的object head和SDS是两个独立的空间,是通过redisObject的b ......
底层 类型 结构 数据 Redis

d、SQL语言

# SQL语言 SQL全称是结构化查询语言,英文译作Structured Query Language,它是一种在关系型数据库中定义和操纵数据的标准语言。 最早是由IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,当时称为SEQUEL2,也就是目前的SQL语言。 19 ......
语言 SQL

控制结构和函数

## 第2章 控制结构和函数 ### 2.1 条件表达式 在scala中if/else表达式有返回值,返回值是if或者else最后一行的值。例如: ``` if(x > 0) 1 else -1 ``` 上述表达式的返回值是1或-1,具体是哪一个取决于x的值。 if表达式的类型推断,由于if表达式是 ......
函数 结构

用Python语言进行多元时间序列ARIMAX模型分析

1.ARIMAX模型定义 ARIMAX模型是指带回归项的ARIMA模型,又称扩展的ARIMA模型。回归项的引入有利于提高模型的预测效果。引入的回归项一般是与预测对象(即被解释变量)相关程度较高的变量。比如分析居民的消费支出序列时,消费会受到收入的影响,如果将收入也纳入到研究范围,就能够得到更精确的消 ......
时间序列 序列 模型 语言 时间

学习go语言编程之函数

## 函数定义 函数的基本组成:关键字func,函数名,参数列表,返回值,函数体,返回语句。 示例如下: ```golang func Add(a int, b int) (ret int, err error) { if a < 0 || b < 0 { err = errors.New("sho ......
语言编程 函数 语言

学习go语言编程之常量

## 什么在常量 在Golang中,常量是指在编译期就已知且不可改变的值。 ## 字面常量 在程序中硬编码的常量值被称为字面常量,如: ```golang -12 // 整数类型常量 3.1415926 // 浮点类型常量 3.2+12i // 复数类型常量 true // 布尔类型常量 "foo" ......
语言编程 常量 语言

学习go语言编程之数据类型

## 数据类型概述 Golang语言内置了如下基础数据类型: - 布尔类型:bool - 整型:int8,unit8,int16,uint16,int32,uint32,int64,uint64,int,uint,uintptr - 浮点类型:float32,float64 - 复数类型:compl ......
语言编程 语言 类型 数据