Go 1.18 中的泛型
Go 1.18 中的泛型 欧长坤 changkun.de/s/generics118 2022/03/30 1 语法和使用 2 什么时候需要泛型? 3 当使用接口作为函数的形参类型时,函数调用方传递的实际参数可以是完全不同的 类型: type T interface { Add(T) T } func Sum(elems ...T) (sum T) { // T 可以是任何实现 (sum S) { // S 的底层类型必须底层类型为 int 约束的类型 for i := range elems { sum += elems[i] } return } 使用泛型的根本目的是: 类型安全的参数传递,以及对实现的类型进行抽象 具有类型参数 (Type Parameter) 的签名 4 func F[T C](v T) (T, error) 普通参数列表 interface contains type constraints func bar(T Ib[int]) {} // OK 为什么第二个 bar 不会报错? 13 抽象能力 泛型没有任何运行时的机制,所以关于泛型的组件只发生在编译时期 对于下面的接口而言,无法作为普通参数使用: func Foo[T any]() {} x := Foo // ERROR: cannot use0 码力 | 45 页 | 501.50 KB | 1 年前3JAVA 应用与开发 - 泛型
应用与开发 泛 型 让我们愉快的 Coding 起来吧... ��� �������������� October 5, 2018 ���� 理��型的��,������� ▶ �合���的�型 ▶ �型的����� ������型类��型�法 ▶ 理�类型参数 ▶ 理�����������的�型类��型�法 ▶ 受��的类型参数 ��处理�型类型,����������型�器����作 作 1 19 �� 1 �型�� 2 �型类��型�法 3 处理�型类型 2 19 �型�� ���泛型 �型�Generics� �型��� JDK 5.0 ����,��������������� 型���� 作为��� Java 类型体�的��,���型���� Java ��� �的类型������������ 3 19 ���泛型 O 集合框架中的数据造型问题 � ��合�取�的元素��������型�为���的类型� 无泛型机制的集合容器 1 Vector v = new Vector(); 2 v.addElement(new Person("Tom", 18)); 3 Person p = (Person) v.elementAt(0); 4 p.showInfo(); 4 19 ���泛型 O 集合框架中的数据造型问题 ��0 码力 | 35 页 | 587.40 KB | 1 年前3MoonBit月兔编程语言 现代编程思想 第六课 泛型与高阶函数
现代编程思想 泛型与⾼阶函数 Hongbo Zhang 1 设计良好的抽象 软件⼯程中,我们要设计良好的抽象 当代码多次重复出现 当抽出的逻辑具有合适的语义 编程语⾔为我们提供了各种抽象的⼿段 函数、泛型、⾼阶函数、接⼝…… 2 泛型函数与泛型数据 3 堆栈 栈是⼀个由⼀系列对象组成的⼀个集合,这些对象的插⼊和删除遵循后进先出原则 (Last In First Out) 11. } 12. } 我们希望存储很多很多类型在堆栈中 每个类型都要定义⼀个对应的堆栈吗? IntStack 和 StringStack 似乎结构⼀模⼀样? 7 泛型数据结构与泛型函数 泛型数据结构与泛型函数以类型为参数,构建更抽象的结构 1. enum Stack[T] { 2. Empty 3. NonEmpty(T, Stack[T]) 4. } 5. fn Stack::empty[T]() (Some(top), rest) 11. } 12. } 将 T 替换为 Int 或 String 即相当于 IntStack 与 StringStack 8 泛型数据结构与泛型函数 我们⽤ [<类型1>, <类型2>, ...] 来定义泛型的类型参数 enum Stack[T]{ Empty; NonEmpty(T, Stack[T]) } struct Pair[A, B]{ first:0 码力 | 27 页 | 2.56 MB | 1 年前3JAVA 应用与开发 - 高级类特性
应用与开发 高级类特性 让我们愉快的 Coding 起来吧... ��� �������������� October 9, 2018 ���� ��抽象类�接口的������定义方法 ��抽象类�接口的����� ����类的�类�����类�����类�匿名��类的 �� ��匿名内部类的���继承�接口实现的�法 ����类�的��方法 1 29 �� 1 抽象类 2 接口 接口 3 抽象类�接口�� 4 ��类 5 ��类� 2 29 抽象类 �����类 抽象类 ����象的������的�象����类 来��的�����来������的类�� �来���象的�����类������� 的��来������的�象���的类�� 抽象类� 抽象类���来������������� ����的抽象������������� �������的����的抽象� 3 29 �����类 抽象类 ����象的������的�象����类 来��的�����来������的类�� �来���象的�����类������� 的��来������的�象���的类�� 抽象类� 抽象类���来������������� ����的抽象������������� �������的����的抽象� �: 我�抽象 3 29 ����类 �定义 Java0 码力 | 61 页 | 677.55 KB | 1 年前3Java 应用与开发 - 类加载和反射
反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 Java 应用与开发 类加载和反射 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 December 24, 2018 大纲 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 学习目标 1. 理解什么是反射机制,通过常见场景认识反射的作用。 2. 掌握类的加载、连接和初始化概念。 3. 理解类加载器及类加载机制。 4. 掌握使用反射生成并操作对象的方法。 大纲 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 大纲 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 大纲 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 接下来⋯ 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 反射 类的加载、连接和初始化 类加载器 使用反射生成并操作对象 本节习题 反射机制 ▶ 程序运行时,允许改变程序结构或变量类型,这种语言称为 动态语言。从这个观点看,Perl、Python、Ruby 是动态语 言,C++、Java、C# 不是动态语言。 ▶ 但是 Java 有着一个非常突出的动态相关机制:反射 (Reflection),可以于运行时加载、探知、使用编译期间完 全未知的类。换句话说,Java0 码力 | 46 页 | 714.40 KB | 1 年前3机器学习课程-温州大学-10机器学习-聚类
1 2023年04月 机器学习-聚类 黄海广 副教授 2 本章目录 01 无监督学习概述 02 K-means聚类 03 密度聚类和层次聚类 04 聚类的评价指标 3 1.无监督学习概述 01 无监督学习概述 02 K-means聚类 03 密度聚类和层次聚类 04 聚类的评价指标 4 1.无监督学习方法概述 监督学习 在一个典型的监督学习中,训练集有标签 函数。 无监督学习 与此不同的是,在无监督学习中,我们的数据没有附带任何标签?,无 监督学习主要分为聚类、降维、关联规则、推荐系统等方面。 监督学习和无监督学习的区别 5 1.无监督学习方法概述 ✓ 聚类(Clustering) ✓ 如何将教室里的学生按爱好、身高划分为5类? ✓ 降维( Dimensionality Reduction ) ✓ 如何将将原高维空间中的数据点映射到低维度的空间中? 无监督学习方法概述 主要算法 K-means、密度聚类、层次聚类 聚类 主要应用 市场细分、文档聚类、图像分割、图像压缩、聚类分析、特征学习或者词 典学习、确定犯罪易发地区、保险欺诈检测、公共交通数据分析、IT资产 集群、客户细分、识别癌症数据、搜索引擎应用、医疗应用、药物活性预 测…… 7 1.无监督学习方法概述 聚类案例 1.医疗 医生可以使用聚类算法来发现疾病。以甲状 腺疾病为例。当我们对包含甲状腺疾病和非0 码力 | 48 页 | 2.59 MB | 1 年前3TiDB 开源分布式关系型数据库
而TipDB TiDB 开源分布式关系型数据库 TiDB PRODUCT PORTFOLIO & VERITICAL CASE STUDY 外网全钼 外和折马外 COeG6 平凯星辰 (北京) 科技有限公司 目录 Contents 第一章 关于 PingCAP 1L1 PingCAP简介 05 12 创新成果 05 1.3 发展历程 06 1.4 技术标准起草 07 15荣誉1 07 07 16 代表用户 08 第二章 TiDB 开源分布式关系型数据库 2.1 产品简介。 2.2 TiDB架构图.ee 10 23 核必特性 11 2.4 TiFlash 高性能列式分析引擎 12 25 TiDB企业 12 2.6 TiDB 社区版与企业版差异 13 第三章 TiDB 生态工具 3.1 数据迁移 . 16 5 品、解 决方案与咨询、技术支持与培训认证服务,致力于为全球行业用户提供稳定高效、安全可告、开放兼容 的新型数据基础设施,解放企业生产力,加速企业数字化转型升级。 由PingCAP 创立的分布式关系型数据库 TiDB,为企业关键业务打造,具备 分布式强一致性事务、在 线弹性水平扩展、故障自恢复的高可用、跨数据中心多活」 等企业级核心特性,帮助企业最大化发挥数 据价值,充分释放企业增长空间。 目前,PingCAP0 码力 | 58 页 | 9.51 MB | 1 年前3亿图图示 V10 用户手册 综合型专业绘图软件
亿图图示 V10 用户手册 综合型专业绘图软件 ©2004 - 2020 EdrawSoft All right reserved. Edraw and Edraw logo are registered trademarks of EdrawSoft. Edraw Max http://www.edrawsoft.cn Page 1 of 162 .................. 159 Edraw Max http://www.edrawsoft.cn Page 4 of 162 亿图图示——综合型专业绘图软件! 拥有丰富的内置图形模板库和超过 10000 个矢量 符号,使用亿图图示绘图将变得再简单不过!亿 图图示为用户提供大量的模板、形状和绘图工 具,以便用更直观和可视化的办公风格来创建各 Edraw Max http://www.edrawsoft.cn Page 5 of 162 亿图图示更新功能 支持将所创作的图形存储到云端。 为什么选择亿图 综合型的绘图软件:亿图图示可以随时随地为用户提供帮助。 海量的矢量图形符号:帮助快速制作流程图、组织结构图、网络图等。 便捷的拖放功能:只需从符号库里拖拽图形至绘图页面,就可以做出漂亮的图形。0 码力 | 162 页 | 5.86 MB | 1 年前3亿图图示 V12 用户手册 综合型专业绘图软件
亿图图示 V12 用户手册 综合型专业绘图软件 ©2004 - 2022 EdrawSoft All right reserved. Edraw and Edraw logo are registered trademarks of EdrawSoft. Edraw Max http://www.edrawsoft.cn Page 1 of 180 ..................... 176 Edraw Max http://www.edrawsoft.cn Page 4 of 180 亿图图示——综合型专业绘图软件 亿图图示为用户提供大量的模板、形状和绘图工 具,以便用更直观和可视化的办公风格来创建各 种图形图表。软件拥有丰富的内置图形模板库和 超过 26000 个矢量符号,让专业绘图将变得更加 Page 5 of 180 亿图图示更新功能 • 新增浮动工具栏 • 新增导入 CAD(支持 dwg 和 dxf 格式,2000-2013 版本) 为什么选择亿图图示 • 综合型绘图软件:亿图图示可以帮助快速制作流程图、组织结构图、思维导图、网络图、工程 图等专业图形图表。 • 便捷的拖放功能:只需从符号库里拖拽图形至绘图页面,就可以做出漂亮的图形。 • 丰富的内置0 码力 | 180 页 | 5.99 MB | 1 年前3从推荐模型的基础特点看大规模推荐类深度学习系统的设计 袁镱
研究⽅向:机器学习系统,云计算,⼤数据系统 � 负责腾讯平台与内容事业群(PCG)技术中台核 ⼼引擎:⽆量系统。⽀持⼤规模稀疏模型训练, 上线与推理 提纲 �推荐场景深度学习系统的基本问题与特点 �推荐类模型的深度学习系统设计 � 系统维度 � 算法维度 �总结 基于深度学习模型的推荐流程,场景与⽬标 Serving系统 HDFS 数据 通道 训练系统 召回 业务服务 排序 混排 主备模式资源严重浪费 � 数据读写需要加锁 � ⽀持多模型和模型多版本 困难 >15亿key/秒 近千台 只读版本 写版本 CPU型服务 Feature 2.2 Hotkey缓存优化 <10台 内存型服务 并发查询优化 数⼗台 ⽹络型服务 TB级模型实时上线 � 问题:TB模型实时多地传输和加载成本⾼ � ⽅案:⾼低频分别上线 � 更灵活的⽤法:模型多切⽚,按需上线0 码力 | 22 页 | 6.76 MB | 1 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100