指针

算法入门经典 刘汝佳 4.2 地址与指针

4.2 地址和指针 4.1节介绍的数学函数的特点是:做计算,然后返回一个值。有时候,我们要做的事情 并不是“计算”——如交换两个变量;而有时候,我们需要返回两个甚至更多的值——如解一个二元一次方程组。 4.2.1 变量交换 程序4-4 用函数交换变量(错误) #include<stdio.h> vo ......
指针 算法 地址 经典 4.2

刷题复习(二)数组-双指针

刷题复习(二)数组-双指针 https://labuladong.gitee.io/algo/di-ling-zh-bfe1b/shuang-zhi-fa4bd/ 1、删除有序数组中的重复项 慢指针用于统计不重复项,快指针用于不停前进对比是否有新的不重复项,有的话进行替换 class Solutio ......
数组 指针

学c笔记归纳 第五篇——指针(抽象点)

概念:内存会划分一个个的内存单元,每个内存单元都有一个编号,1个内存单元的大小为:1字节(1byte),内存单元的编号就是它的地址,地址也被称为指针。 存放指针(地址)的变量就是指针变量; 指针的本质就是地址,地址可以用指针变量存起来; 指针变量也是变量,也分全局和局部。 #include <std ......
指针 笔记

C语言--深入理解指针

C语言--深入理解指针 一. 指针的概念 要知道指针的概念,要先了解变量在内存中是如何存储的。在存储时,内存被分为一块一块的,每一块都有一个特有的编号。而这个编号可以暂时理解为指针,就是酒店的门牌号一样。 变量和地址 看下面代码 void main(){ int x = 10, int y = 20 ......
指针 语言

c语言实现this指针效果

概要 由于目前在做一个比较复杂的嵌入式项目,想要借此提升一下代码的结构设计能力,所以想要以面向对象的思想来完成这个项目,即把每个板载外设资源视为一个对象,采用msp+bsp的模式,对每个bsp外设实现对象化处理,现有方案需要手动传入对象引用,调用方法时比较麻烦,所以考虑简化调用方式。 面向对象实现思 ......
指针 效果 语言 this

C++_28_空指针、野指针、智能指针 - 重写版

野指针:没有明确执向的指针,可能会胡乱指向任意一个变量;编程的时候绝不允许出现野指针; int *p; //错误,未初始化指向一块地址,会变成野指针 如果确实需要先不指定到需要使用的内存,那就先定义一个空指针; 》宁愿指向为空也不要为野;因为野指针你把握不住; 空指针:让指针指向NULL;就是指向为 ......
指针 智能 28

指针内存测试

对下面的这一段代码 int a[10]; int *b = new int[10]; int *c = (int*) malloc(sizeof(int) * 10); cout << sizeof(a) << endl; cout << sizeof(b) << endl; cout << siz ......
指针 内存

实验5 C语言指针应用编程

task1.1 1 #include <stdio.h> 2 #define N 5 3 4 void input(int x[], int n); 5 void output(int x[], int n); 6 void find_min_max(int x[], int n, int *pmi ......
指针 语言

C++ 返回函数指针的函数

目录0 前言1 Function Pointer in C/C++ type1.1 ordinary function Pointer1.2 non-static member function of class1.3 Lambda To Function Pointer1.4 总结什么是指针2 R ......
函数 指针

const与指针的组合

① const int *p; //指向一个整型常量的指针,p可变,p指向的对象不可变。 ② int const *p; //同上。 ③ int * const p; //p不可变,p指向的对象可变(const修饰的是*),常量指针。 ④ const int * const p; //p不可变,p指 ......
指针 const

2302. 统计得分小于 K 的子数组数目(双指针,贡献法,子数组问题)

枚举子数组问题,常见有固定一个点,枚举另一个端点,还有枚举中间点。 本题使用双指针算法,对右端点进行枚举,每次累加[l, r]区间内,所有以右端点为结尾的子数组对答案的贡献度,也就是长度 r- l + 1 class Solution: def countSubarrays(self, nums: ......
数组 指针 数目 得分 贡献

[LeetCode-双指针-中等] 盛最多水的容器

这道题主要是考双指针 题目大概是这样的,就是说给定一个长度为n的整数数组height, 代表Y轴上的n条垂线,其中,第i条线的两个端点是(i,0) 和 (i,height[i]) => 要在这n条垂线中找出其中的2条,使得它们和x轴共同构成的容器可以容纳最多的水 返回容器可以储存的最大水量 ......
指针 容器 LeetCode

实验5 C语言指针应用编程

1.实验任务1 1 #include <stdio.h> 2 #define N 5 3 4 void input(int x[], int n); 5 void output(int x[], int n); 6 int *find_max(int x[], int n); 7 8 int mai ......
指针 语言

双指针问题

1.双指针暴力超时,优化方案 Problem - D - Codeforces 当数组中只存在1和2的值的时候我们可以考虑用二分去优化,我们可以找到数组中最后一个1的值,前面都是1和2的话 我们可以通过最后一个1去灵活地凑出 第一个数到最后一个1的数的和中间的任意一个值(划重点) 当然我们要尽可能凑 ......
指针 问题

《力扣面试150题》题单拓展——双指针

《力扣面试150题》题单拓展——双指针 1.基础知识 为什么双指针会正确?不会漏掉搜索空间 数组nums递增排序,假设共8个元素 假设由于搜索空间i < j的限制,只搜索右上角白色倒三角空间,一开始,我们检查右上方单元格(0,7),即计算A[0] + A[7],与 target 进行比较。如果不相等 ......
指针 150

指针数组和数组指针

int main() { int* p1[10]; int(*p2)[10]; return 0; } 首先要知道,[ ] 优先级是要高于 * 号。 int* p1[10] ,p1优先和数组结合,那么此时p1就是一个数组,里面存放的内容都是指针类型,所以p1是一个数组,里面存放的内容是指针的地址,叫 ......
数组 指针

双指针算法总结

双指针算法分为两类:第一类指向一个序列(更多的情况),第二类指向两个序列。 基本的代码框架是: for (i = 0, j = 0; i < n; i++) { while (j < i && check(i, j)) j++; // 每道题目的具体逻辑 } 核心思想:运用单调性等性质,将O(n2) ......
指针 算法

智能指针

Android 源码中使用的很多的一个东西,做个简单记录 强指针 sp ~\frameworks\rs\cpp\util\StrongPointer.h ~\system\core\libutils\include\utils\StrongPointer.h template<typename T> ......
指针 智能

指针好题(考试前可复习)

struct Array{ int* p; int size; int capacity; }; Array *create_array(int value){ Array *array=new Array;//定义一个新指针时,一定要记得初始化 //要么用已经定义了的变量的地址,要么new一个 a ......
指针

实验5—C语言指针应用编程

1、实验任务1 task1_1 源代码 1 #include <stdio.h> 2 #define N 5 3 4 void input(int x[], int n); 5 void output(int x[], int n); 6 void find_min_max(int x[], int ......
指针 语言

实验5 c语言指针应用编程

实验任务1 task1_1.c 程序源码 1 #include <stdio.h> 2 #define N 5 3 4 void input(int x[], int n); 5 void output(int x[], int n); 6 void find_min_max(int x[], in ......
指针 语言

指针强制类型转换的本质

例题: #include <iostream> #include <stdio.h> #define ll long long using namespace std; int ans[100]; int main(){ double d; cin >> d; ll p=*(ll *)&d; int ......
指针 本质 类型

指针的注意事项

1.如果在代码里面这么写 char *cp="123"; ... if(*cp) ... if(!*cp) ... 第一个if指cp这个指针当前指向的地址是否是cp最开始指向的字符串的有效位里面(不包含'\0') 第二个if当然就是反过来了 2.如果常量指针(const)要赋值给普通指针,必须加上显 ......
指针 注意事项 事项

实验5 c语言指针应用编程

task1_1 1 #include <stdio.h> 2 #define N 5 3 4 void input(int x[], int n); 5 void output(int x[], int n); 6 void find_min_max(int x[], int n, int *pmi ......
指针 语言

[good]c语言函数指针的运用

#include <stdio.h> #define MAX 10 void swap(int *x, int *y) { int temp; temp = *x; *x = *y; *y = temp; } void fun(int *height, int *age) { int n = 10; ......
指针 函数 语言 good

C/C++常见函数指针的用法

一、简单函数指针的用法 #include <iostream> int (*pFun)(int, int); int Add(int a, int b) { return (a + b); } int main() { pFun = Add; std::cout << (*pFun)(2, 2) < ......
指针 函数 常见

C++ 智能指针的正确使用方式

C++11 中推出了三种智能指针,unique_ptr、shared_ptr 和 weak_ptr,同时也将 auto_ptr 置为废弃 (deprecated)。 但是在实际的使用过程中,很多人都会有这样的问题: 不知道三种智能指针的具体使用场景 无脑只使用 shared_ptr 认为应该禁用 r ......
指针 方式 智能

刷题复习(一)链表-双指针

刷题复习(一)链表-双指针 https://labuladong.gitee.io/algo/di-ling-zh-bfe1b/shuang-zhi-0f7cc/ 1、合并两个有序链表 思路清晰,双链表有个根节点记录开头 /** * Definition for singly-linked list ......
指针

实验5 C语言指针应用编程

实验任务1(1) 1 #include <stdio.h> 2 #define N 5 3 void input(int x[], int n); 4 void output(int x[], int n); 5 void find_min_max(int x[], int n, int *pmin ......
指针 语言

指针和引用

难易度:简单 备考建议 指针是无法在复赛考察的,所以在初赛考察的可能性大,大家平常写题目又不用,所以在初赛备考时应该引起重视。 结合2023新修订的考试大纲。除了指针本身的概念,涉及到指针的知识点共有3个: 1.基于指针的数组元素访问 2.字符指针 3.指向结构体的指针 什么是指针 指针是一种数据类 ......
指针