之和 指针

双指针

双指针 OD281 在字符串中找出连续最长的数字串(含“+-”号) 请在一个字符串中找出连续最长的数字串,并返回这个数字串。 如果存在长度相同的连续数字串,返回最后一个。 如果没有符合条件的字符串,返回空字符串””。 注意: 数字串可以由数字”0-9″、小数点”.”、正负号”±”组成,长度包括组成数 ......
指针

使用Optional优雅避免空指针异常

在编程世界中, 空指针异常(NullPointerException)无疑是我们最常遇到的"罪魁祸首"之一。它像一片隐蔽的地雷,静静地等待着我们不小心地踏入,给我们的代码带来潜在的威胁。这种问题虽然看似微小,但却无法忽视。甚至可能对整个程序的稳定性产生重大影响。 ......
指针 Optional

随想录Day7|454. 四数相加Ⅱ、383. 赎金信、15. 三数之和、18. 四数之和

随想录Day7|454. 四数相加Ⅱ、383. 赎金信、15. 三数之和、18. 四数之和 454. 四数相加Ⅱ 文章&视频讲解 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 <= i, j, ......
之和 随想录 随想 Day7 Day

力扣16.最接近的三数之和(双指针)

给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。 返回这三个数的和。 假定每组输入只存在恰好一个解。 示例 1: 输入:nums = [-1,2,1,-4], target = 1 输出:2 解释:与 ta ......
之和 指针 16

随想录Day5|242. 有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和

随想录Day5|242. 有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和 242. 有效的字母异位词 文章&视频讲解 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互 ......
随想录 之和 数组 交集 随想

基础双指针算法:单队列、双队列

1、单队列 输入一串字符串,字符串有多个由单个逗号隔开的单词,任务是需要把单词间隔开,每个单词换行输出。 输入样例abc def ghi 输出样例abc def ghi #include <iostream> using namespace std; const int N = 1010; int ......
队列 指针 算法 基础

访问空指针出panic

panic信息: <4>[1670581299] 15:Failed on write i2cdev=23(I2CDEV_RFSW0) <4>[1670581299] 15:tx retry failed <4>[1670581299] 15:Failed on write i2cdev=23(I2 ......
指针 panic

力扣-三数之和

1.问题 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意: 答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足 ......
之和

int (*s[10]) (int);含义,函数指针。

问题 int (*s[10]) (int);含义是什么? 答案 是一个包含10个函数指针的数组的声明。 示例 一般情况看到的函数指针如下: int fun1(int);//这是一个函数声明 int (*pf)(int);//声明了一个函数指针 pf=fun1;//将函数的地址赋值给pf。 这里的函数 ......
指针 函数 int 含义 10

crash —— 如何知道哪些数据结构内嵌了指定的数据结构或者内嵌了指向指定数据结构的指针

需求 有时我们有这样的需求,比如我们知道了结构体task_struct,然后我们又想知道内核中有哪些数据结构中包含了task_struct,或者包含了指向task_struct的指针。 做法 用whatis -m可以做到: crash> whatis -m task_struct SIZE TYPE ......
数据结构 结构 数据 指针 指向

Go指针探秘:深入理解内存与安全性

Go指针为程序员提供了对内存的深入管理能力,同时确保了代码的安全性。本文深入探讨了Go指针的基础概念、操作、深层理解及其特性与限制。通过深入了解其设计哲学和应用,我们可以更好地利用Go的强大功能。 关注公众号【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联 ......
指针 安全性 内存

代码随想录算法训练营day17 | ● 110.平衡二叉树 ● 257. 二叉树的所有路径 ● 404.左叶子之和

110.平衡二叉树 class Solution { public: int getHeight(TreeNode* node){ if(node == NULL) return 0; int leftHeight = getHeight(node->left); if(leftHeight == ......
随想录 之和 训练营 随想 算法

C++指针和地址偏移在HotSpot VM中的应用

在前面我们介绍过new运算符,这个操作实际上上包含了如下3个步骤: 调用operator new的标准库函数。此函数会分配一块内存空间以便函存储相应类型的实例; 调用相应类的构造函数; 返回一个指向该对象的指针。 在第一步中,其实我们可以自己写个operator new函数对标准库函数进行重载,通常 ......
指针 HotSpot 地址

C中指针之间的类型转换

也许一个不兼容的指针可以访问变量 #include <stdio.h> #include <stdlib.h> typedef struct father { int age; char* name; } father; typedef struct student { int age; doubl ......
指针 之间 类型

理解C语言中的void类型的指针

1.void类型指针简介 void类型的指针又被称为泛型指针,通用型指针 void类型的指针:指针指向的内存地址中的数据的类型未知 其他所有类型的指针都可以转换为void类型的指针,而且不需要强制类型转换(编译器会隐式/自动类型转换) void类型的指针也可以转换为任意类型的指针,需要强制类型转换( ......
指针 语言 类型 void

C语言中的函数指针以及模拟面向对象

函数指针的概念 顾名思义,函数指针就是指向函数的指针,该指针的值是函数的入口。下面的代码时函数指针的一个基本实例。 #include <stdio.h> int max_(int a, int b); int max1_(int (*func_p)(int, int), int a, int b); ......
指针 函数 对象 语言

C++ | 智能指针

头文件:#include <memery> 首先,对于智能指针,它是无法隐式构造的,不管是unique_ptr,还是shared_ptr,或者是weak_ptr。 即,如果想要初始化一个智能指针,得使用传入参数的形式: unique_ptr<int> up(new int); 为什么需要使用智能指针 ......
指针 智能

C++ | 智能指针之模仿实现shared_ptr

template<class T> class Shared_pointer{ private: ssize_t *_ref_count; // 计数器的指针 T *_ptr; // 元素的指针 std::mutex *mtx; // 计数器的锁 public: explicit Shared_po ......
指针 shared_ptr 智能 shared ptr

快指针慢指针

快指针和慢指针主要解决将某一目标值覆盖或抛到数组最后且不改变原数组剩下元素的顺序的问题 快指针每次循环都会往后移动,慢指针只有快指针没有遇到目标值的时候才会往后移动,在慢指针移动之前还要对目标值进行覆盖或则交换操作。 将目标值抛到最后 https://leetcode.cn/problems/mov ......
指针

力扣15.三数之和

给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请 你返回所有和为 0 且不重复的三元组。 注意:答案中不可 ......
之和 15

n数之和

n 数之和 本质上就是将双指针作为等效循环(n 层循环 + 双指针 = n + 1 层循环),实现复杂度降维 两数之和(核心) 排序 + 首尾双指针 vector<vector<int>> twoSum(vector<int> &nums, int target) { vector<vector<i ......
之和

编程扎记(三)[引用与指针、]

一、引用和指针的不同与相同 引用和指针的不同点: 1. 引用在定义时必须初始化,指针没有要求 2. 引用在初始化时引用一个实体后,就不能再引用其他实体,而指针可以在任何时候指向任何一个同类型 实体 3. 没有NULL引用,但有NULL指针 4. 在sizeof中含义不同:引用结果为引用类型的大小,但 ......
指针

[算法学习笔记] 浅谈二路归并&双指针&归并排序

二路归并 · 双指针 是一种优化思想。它可以在 \(O(n)\) 的复杂度下把两个长度为 \(n\) 的有序数组合并为一个有序数组。 它的具体处理方法如下: 定义两个长度为 \(n\) 的升序数组 \(a,b\)。,合并完后长度为 \(2n\) 的数组 \(c\),初始化两个指针 \(x=y=1\) ......
指针 算法 amp 笔记

C语言-复杂的指针关系

非法的指针 指针表达式 函数指针 函数指针 - Sunsin - 博客园 (cnblogs.com) #include <stdio.h> int main() { int* a ; *a = 12; return 0; } ......
指针 语言

c++中指针和引用的区别?

1.指针是一个实体,需要分配内存空间,引用是一个变量的别名,不需要分配内存空间。 2.引用在定义的时候必须进行初始化,并且不能改变。引用的值不能为NULL,指针在定义的时候不一定要初始化,并且指针所指向的空间是可变的,可以指向NULL。 3.sizeof指针得到的是指针本事的大小,sizeof引用得 ......
指针

算法讨论题 —— Java实现两数之和

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。即:每个index上的数字只能用一次。 示例 给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 ......
之和 算法 Java

函数指针

函数指针可以将函数作为函数的参数,对函数的参数设置想要的操作 void PrintValue(int value){ std::cout<<value<<std::endl; } void ForEarch(const std::vector<int>& v,void(*funtion)(int)) ......
指针 函数

有关指针的一些代码定义

定义一个指针 int *p; p是指向整型的指针。由于没有初始化操作,p的指向是未知的,这是一个野指针。 连续定义指针 int *p1, *p2; p1和p2都是指针类型。如果写成 int *p1, p2; p1是指针类型,p2是整型变量,不是指针。 常量指针(指向常量的指针变量) const in ......
指针 代码

C++中的类指针

Student a; s.setName("A"); // Studeng *b = new Student(); Student *b; // 声名指针 b = new Student(); // 动态分配内存 b->setName("B"); // 访问成员函数 分析 定义类对象基本格式是:St ......
指针

力扣1.两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7, ......
之和