首页 > 其他分享 >离散化简介

离散化简介

时间:2024-03-30 20:00:43浏览次数:24  
标签:下标 val int 简介 离散 哈希 data

简介(Introduction)

离散化 —— 把无限空间中有限的个体映射到有限的空间中去,以此提高算法的时空效率,即:在不改变数据相对大小的条件下,对数据进行相应的缩小。
离散化本质上可以看成是一种  哈希,其保证数据在哈希以后仍然保持原来的 全/偏序 关系。

描述(Description)

  • 离散化用于处理一些个数不多,但是数据本身很大但是仍需要作为数组等无法过大的下标时,我们可以处理一下这些大的下标,并且依然保持其原序。
  • 通俗地讲就是当有些数据因为本身很大或者类型不支持,自身无法作为数组的下标来方便地处理,而影响最终结果的只有元素之间的相对大小关系时,我们可以将原来的数据按照从大到小编号来处理问题

模板代码(Template Code)

#include <bits/stdc++.h>
using namespace std;
const int N=500010; //Customize a range
struct data{
	int id;//key
	int val;//value
}olda[N];//Raw data before discretization
int newa[N];//Discretized results
bool cmp(data x,data y)
{
	return x.val<y.val;
}
int main()
{
	int n;
	scanf("%d",&n);
	for(int i=1;i<=n;i+

标签:下标,val,int,简介,离散,哈希,data
From: https://blog.csdn.net/Qpeterqiufengyi/article/details/137181177

相关文章

  • ARM-GUN汇编简介
    目录一、GUN汇编书写格式1.标号(Label)2.操作码(Opcodes)3.操作数(Operands)4.注释(Comments)二、GUN汇编常用伪指令1.系统预定义的段2.常量的定义3.数据定义4.条件伪指令5.文件包含伪指令6.其他常用伪指令​ 人们利用助记符代替机器指令的操作码,用标号代替指令及操作数的地......
  • 基于DWT(离散小波变换)的图像加密水印算法,Matlab实现
           博主简介:专注、专一于Matlab图像处理学习、交流,matlab图像代码代做/项目合作可以联系(QQ:3249726188)       个人主页:Matlab_ImagePro-CSDN博客       原则:代码均由本人编写完成,非中介,提供有偿Matlab算法代码编程服务,不从事不违反涉及学术原则......
  • 【Clang+LLVM+honggfuzz学习】(一)LLVM简介、安装和第一个Hello Pass
    本文结构,PS:根据需要选择观看哦1.前言参考2.简介传统编译器架构LLVM架构3.LLVM安装版本准备官网源码下载git下载安装过程4.写一个LLVMPass旧HelloPass实现(legacyPMversion)新HelloPass实现(UsingtheNewPassManager)1.前言漏洞检测做毕设,还有一年。半......
  • (未完成)离散数学
    命题具有唯一真值的陈述句,具有客观性质。任何疑问句、祈使句、感叹句、有歧义的陈述句不属于命题。真值为“真”的命题是真命题,真值为“假”的命题是假命题。命题的分类:原子命题:不可再分解的命题(用大写英文字母P,Q,R……表示<可以有下标>)。复合命题:可再分解的命题,由原子命......
  • 多视图三维重建-SFM简介
    背景掌握传统的多视图三维重建基本流程总体流程多视图三维重建的Pipieline如下图,总共分为四个步骤:拍摄场景多视角的图像建立这些图像之间的联系(DataAssociation)SFM稀疏重建MVS稠密重建DataAssociation建立图像之间的联系主要包含以下4个步骤:1)特征提取;2)特征匹配;3)基......
  • Visual Studio Code & Python教程1简介
    1简介VisualStudioCode是一款开源代码编辑器,可免费使用,完全支持Python编程语言的开发。它具有一些有用的功能,例如与世界各地的其他程序员进行实时协作。本章旨在介绍VSCode,帮助您了解其开发过程及其不同组件。我们将讨论为什么它可能是最受欢迎的代码编辑器,了解它的功能,并讨......
  • 桌面/WEB端3D开发工具HOOPS SDK简介
    TechSoft3D在长达25年的时间内,一直通过卓越的3D技术帮助全球超过600家客户推动创新,这些客户包括HEXAGON、SolidWorks、SIEMENS、Aras、ANSYS、AVEVA等各个行业的领军者。TechSoft3D旗下拥有4款原生产品,分别是:HOOPSExchange、HOOPSCommunicator、HOOPSVisualize以及......
  • systemd简介(一)
    文章目录写在前面systemd是什么?Systemd提供:官方网站介绍:目前使用systemd的Linux发行版有哪些?linux开机流程(系统初始化)是什么,systemd在其中的作用是什么systemd架构图systemd的一些特点systemd的发展史,起源,以及为什么有这个?起源:存在原因:发展历程:systemd在现在有什么问题......
  • 离散数学:“张三李四王五说谎问题”
    在大一下期的离散课程里,通过王建芳教授的指导,使我真正了解并体会到了离散的数学之美。下面开始进行问题与解答的分享:谁在说谎?①张三说李四在说谎。②李四说王五在说谎。③王五说张三、李四都在说谎。请问三人中到底谁在说谎?这是通过真值表的方法来判断到底是谁在说谎,但......
  • 领域驱动设计简介
    ​ 领域驱动设计(Domain-DrivenDesign,简称DDD)是一种软件开发方法论,旨在通过丰富的领域模型来解决复杂问题。它强调基于领域的逻辑来驱动设计,而非技术实现细节,以此来促进软件项目的成功。DDD的核心在于理解业务领域,并将这种理解反映在软件中。参考文档:领域驱动设计简介-CJavaPy......