算法inGolang:Quicksort(快速排序)Quicksort(快速排序)快速排序O(nlog2^n),比选择排序要快O(n²)在日常生活中经常使用使用了D&C策略(分而治之)使用Quicksort排序数组不需要排序的数组(也就是BaseCase基
数据结构inGolang:HashTables(哈希表)场景水果店的价格表:苹果Apple:3元香蕉Banana:4元桃子Peach:2元梨Pear:3元找到一种水果的价格:可以使用binarysearch,通过名称来查找,耗时:O(logn)如何只耗时
Rust编程语言之无畏并发并发Concurrent:程序的不同部分之间独立的执行(并发)Parallel:程序的不同部分同时运行(并行)Rust无畏并发:允许你编写没有细微Bug的代码,并在不引入新Bug的情况下易于重构注意:本文中的”并发“泛指concurrent和paralle
Rust编程语言之枚举与模式匹配一、定义枚举枚举枚举允许我们列举所有可能的值来定义一个类型定义枚举IP地址:IPv4、IPv6enumIpAddrKing{V4,V6,}枚举值例子:letfour=IpAddrKind::V4;letsix
Rust编程语言之Cargo、Crates.io详解内容通过releaseprofile来自定义构建在https://crates.io/上发布库通过workspaces组织大工程从https://crates.io/来安装库使用自定义命令扩展cargo一、通过re
RustTips比较数值内容比较与类型转换浮点类型比较可以用这些运算符比较数值><==!=>=<=无法比较不同类型的值fnmain(){leta:i32=10;letb:u16=100;ifa<b{//报错
《Rust编程之道》学习笔记二第2章语言精要好读书,不求甚解;每有会意,便欣然忘食。1Rust语言的基本构成Rust语言主要由以下几个核心部件组成:语言规范编译器核心库标准库包管理器语言规范Rust语言规范主要由Rust语言参考(TheRustRefe
Rust函数式语言特性:迭代器和闭包本章内容闭包(closures)迭代器(iterators)优化改善12章的实例项目讨论闭包和迭代器的运行时性能一、闭包(1)-使用闭包创建抽象行为什么是闭包(closure)闭包:可以捕获其所在环境的匿名函数。闭包:是匿名函数
算法inGolang:D&C(分而治之)D&C算法(策略)Divide&Conquer属于递归算法的一种其实它更像是一种思路、策略递归递归Recursion基线条件BaseCase递归条件RecursiveCaseD&C的步骤找到
当工程规模变大时,把代码写到一个甚至几个文件中,都是不太聪明的做法,可能存在以下问题:单个文件过大,导致打开、翻页速度大幅变慢查询和定位效率大幅降低,只有有效的组织代码才能更好的维护代码
算法inGolang:Breadth-firstsearch(BFS、广度优先搜索)最短路径问题Shortest-pathproblem从A到F点有多条路径解决问题的算法Breadth-firstSearch(广度优先搜索)将问题建模为图(Graph)通过B
Rust编写自动化测试一、编写和运行测试测试(函数)测试:函数验证非测试代码的功能是否和预期一致测试函数体(通常)执行的3个操作:准备数据/状态运行被测试的代码断言(Assert)结果解剖测试函数测试函数需要使用test属性(attribute)进行标注
Rustasync编程AsynchronousProgramminginRust:https://rust-lang.github.io/async-book/中文书名《Rust异步编程指南》:https://github.com/rustlang-cn/async-bookRus
使用AsyncRust构建简单的P2P节点P2P简介P2P:peer-to-peerP2P是一种网络技术,可以在不同的计算机之间共享各种计算资源,如CPU、网络带宽和存储。P2P是当今用户在线共享文件(如音乐、图像和其他数字媒体)的一种非常常用的方法。Bittorre
RustAsync简易教程课程内容异步编程的概念同步、多线程、异步的例子理解Async理解Future最后一个例子一、异步编程的概念并发与并行并发(concurrency)是指程序不同部分可以同时不按顺序的执行且不影响最终结果的能力。而同时执行多个任务是并行(par
Rust高级特性主要内容不安全Rust高级Trait高级类型高级函数和闭包宏一、不安全Rust匹配命名变量隐藏着第二个语言,它没有强制内存安全保证:UnsafeRust(不安全的Rust)和普通的Rust一样,但提供了额外的“超能力”UnsafeR
《Rust编程之道》学习笔记一序Rust语言的主要特点系统级语言无GC基于LLVM内存安全强类型+静态类型混合编程范式零成本抽象线程安全程序员的快乐何谓快乐?真正的快乐不仅仅是写代码时的“酸爽”,更应该是代码部署到生产环境之后的“安稳”。程序的三大定律程序必须正确
算法inGo:BinarySearch(二分查找)BinarySearch(二分查找)BinarySearch(二分查找)猜数1、2、3、4、5、6、7、8排好序一个集合,先从中间开始猜,根据提示就可以排除一半,在剩余的一半里,再从中间开始猜,依此类推,这就是二分查找。Bi
模式匹配模式模式是Rust中的一种特殊语法,用于匹配复杂和简单类型的结构将模式与匹配表达式和其他构造结合使用,可以更好地控制程序的控制流模式由以下元素(的一些组合)组成:字面值解构的数组、enum、struct和tuple变量通配符占位符想要使用模式,需要将其与某个值
学习过面向对象语言的同学对于方法肯定不陌生,class里面就充斥着方法的概念。在Rust中,方法的概念也大差不差,往往和对象成对出现
扫一扫 - 使用登链小程序
106 篇文章,294 学分
3 篇文章,269 学分
55 篇文章,237 学分
13 篇文章,206 学分
16 篇文章,163 学分