
数据结构与算法
文章平均质量分 70
迈达量化
专注于量化交易系统与交易策略的开发,十几年编程与交易经验。
展开
-
类全局变量与类单例模式优缺点比较
全局创建一个类变量和使用该类的单例模式都有各自的优缺点,取决于具体的使用场景和需求。综上所述,选择全局创建一个类变量还是使用类的单例模式取决于具体的需求和场景。如果需要简单易用、全局可见且灵活性较高的数据共享方式,可以选择全局创建一个类变量。如果需要更好的封装性、控制访问权限和避免命名冲突的方式,可以选择使用类的单例模式。原创 2024-04-05 23:00:00 · 994 阅读 · 0 评论 -
容器类的设计及应用
列表是有序的可变容器,元组是有序的不可变容器,集合是无序的唯一元素容器,字典是键值对的映射容器。因此,在设计容器类时,需要综合考虑具体的需求和设计目标,权衡利弊,决定是否使用单例模式。容器类的使用可以提高代码的灵活性和可读性,使得数据的组织和操作更加方便和高效。考虑容器的可扩展性:容器类的设计应该考虑到容器的可扩展性。考虑容器的用途和需求:在设计容器类之前,需要明确容器的用途和需求。考虑容器的灵活性:容器类的设计应该考虑到容器的灵活性。考虑容器的兼容性:容器类的设计应该考虑到容器的兼容性。原创 2024-04-05 18:34:20 · 479 阅读 · 0 评论 -
抽象语法树的简介及应用
AST的目的是提供一种简化的、更易于处理的表示形式,以便在编译器或解释器的各个阶段中使用。通过分析AST,可以对源代码进行结构上的修改,例如添加、删除或替换代码块,以实现代码的重构和改写。通过分析AST,可以检测代码中的潜在问题和错误,例如未使用的变量、死代码、代码重复等。它不受源语言的具体语法规则的限制,因此可以用于不同的编程语言。抽象语法树(AST)是源代码语法结构的一种抽象表示,以树状的形式表现编程语言的语法结构。以上是抽象语法树的一些应用场景,它在编程语言的解析、分析和处理过程中起着重要的作用。原创 2024-04-02 21:58:03 · 756 阅读 · 0 评论 -
红黑树的简介及应用
其中一种情况是,如果插入的节点的父节点和叔节点都是红色的,那么可以通过改变颜色和旋转操作来保持红黑树的性质。通过将交易数据按照不同的维度(如交易时间、交易品种等)存储在红黑树中,可以方便地进行数据查询、排序和聚合操作,从而得出交易数据的有用信息和结论。通过将交易策略的关键指标(如股票价格、交易量等)存储在红黑树中,可以快速地进行查询和比较操作,从而提高交易策略的执行速度和准确性。交易订单管理:红黑树可以用于管理交易订单,通过将订单按照价格或时间等关键指标进行排序,可以快速地查找、插入和删除订单。原创 2024-03-22 18:15:00 · 578 阅读 · 0 评论 -
数据结构图的简介及应用
图由顶点和边组成,顶点表示图中的节点,边表示节点之间的关系。图可以分为有向图和无向图,有向图中的边有方向,无向图中的边没有方向。加权图和非加权图:加权图中的边具有权重或者距离的属性,用于表示节点之间的关系的强度或者距离;非加权图中的边没有权重属性,只表示节点之间的连接关系。有向图和无向图:有向图中的边是有方向的,表示从一个节点到另一个节点的箭头方向;无向图中的边没有方向,表示节点之间的关系是相互的。以上是图结构的一些常见分类方式,根据具体的应用场景和需求,还可以有其他的分类方式。原创 2024-03-21 20:00:00 · 641 阅读 · 0 评论 -
深入理解数据结构森林
森林可以通过树来表示,每个树代表一个集合,树中的节点代表集合中的元素。社交网络中的好友关系:在社交网络中,可以使用森林来表示用户之间的好友关系。每个树代表一个用户的好友圈,树中的节点代表用户,树的根节点代表好友圈的代表用户。每个树代表一个连通分量,树中的节点代表图中的顶点。每个树代表一个集合,树中的节点代表集合中的元素。在树的概念中,每个节点可以有多个子节点,而在森林中,每个树都是独立的,没有共享的节点。通过并查集操作,可以高效地处理元素的分组管理问题,提高算法的效率和性能。原创 2024-03-18 20:05:30 · 1554 阅读 · 0 评论 -
深入理解数据结构树
数据结构树是一种非线性的数据结构,它由节点和边组成。树的节点之间通过边连接,形成层次结构。树的顶部节点称为根节点,每个节点可以有零个或多个子节点。节点之间的连接关系称为父子关系。除了根节点外,每个节点都有一个父节点。没有子节点的节点称为叶节点。树的层次由根节点开始,每向下一层,节点的数量增加。原创 2024-03-18 19:14:18 · 552 阅读 · 0 评论 -
数据结构与算法简介
数据结构研究如何将大量的数据组织成一个结构,并能对其进行有效操作,主要包括线性表、树、图、队列等基本数据结构,以及排序、查找、递归等常用的复杂数据结构、算法和编程语言。在实际应用中,不同类型的数据问题需要采用不同的数据结构来解决,从而形成不同的数据模型,并将其应用于各种不同的计算机系统中。总之,数据结构和算法是紧密相关的,它们相互依赖、相互促进,对于编写高效、优雅的程序来说,同时学习和掌握数据结构和算法是非常重要的。总之,优秀的数据结构不仅提高数据操作的效率,还可以节省存储空间,并支持复杂的操作。原创 2024-03-07 18:15:00 · 339 阅读 · 0 评论