当前位置: 首页 > wzjs >正文

中国建筑设计网官网淮安网站seo

中国建筑设计网官网,淮安网站seo,wordpress 公园,c2c电商平台可以分为5 泛型 类型参数 s 是满足内置约束 comparable 的任何类型 T 的切片。 x 也是相同类型的值。comparable 是一个有用的约束,它能让我们对任意满足该类型的值使用 和 ! 运算符。 func Index[T comparable](s []T, x T) int// Index 返回 x 在 s 中的下标&#xff…

5 泛型

类型参数

  • s 是满足内置约束 comparable 的任何类型 T 的切片。 x 也是相同类型的值。
  • comparable 是一个有用的约束,它能让我们对任意满足该类型的值使用 ==!= 运算符。
func Index[T comparable](s []T, x T) int
// Index 返回 x 在 s 中的下标,未找到则返回 -1。
func Index[T comparable](s []T, x T) int {for i, v := range s {// v 和 x 的类型为 T,它拥有 comparable 可比较的约束,// 因此我们可以使用 ==。if v == x {return i}}return -1
}func main() {// Index 可以在整数切片上使用si := []int{10, 20, 15, -10}fmt.Println(Index(si, 15))// Index 也可以在字符串切片上使用ss := []string{"foo", "bar", "baz"}fmt.Println(Index(ss, "hello"))
}2
-1

练习 泛型类型

作为练习,请为此链表的实现添加一些功能。

  • 用全局函数 AddDelete,传递双指针 **List[T],避免方法接收者语法问题。
  • Tcomparable 约束,保证可以用 ==
  • 其他方法(如 FindTraverse)仍然用方法接收者 *List[T],这样 intList.Traverse() 能正常调用。
  • 无比较使用T any。有比较操作使用T comparabel
package mainimport "fmt"// List 表示一个可以保存任何类型的值的单链表。
type List[T any] struct {next *List[T]val  T
}// NewList 创建一个新的空链表(返回头指针为 nil)
func NewList[T any]() *List[T] {return nil
}// Add 在链表末尾添加一个节点
func Add[T any](l **List[T], value T) {newNode := &List[T]{val: value}if *l == nil {*l = newNode} else {current := *lfor current.next != nil {current = current.next}current.next = newNode}
}// Delete 删除链表中第一个值等于 value 的节点
func Delete[T comparable](l **List[T], value T) {if *l == nil {return}if (*l).val == value {*l = (*l).nextreturn}current := *lfor current.next != nil && current.next.val != value {current = current.next}if current.next != nil {current.next = current.next.next}
}// Find 查找链表中第一个值等于 value 的节点
func Find[T comparable](l *List[T], value T) *List[T] {current := lfor current != nil {if current.val == value {return current}current = current.next}return nil
}// Traverse 遍历链表并打印每个节点的值
func Traverse[T any](l *List[T]) {current := lfor current != nil {fmt.Print(current.val, " ")current = current.next}fmt.Println()
}//链表长度
func Len[T any](l *List[T]) int {current := lcount:=0for current != nil {count++current = current.next}return count
}func Reverse[T any](l *List[T]) *List[T] {var newHead *List[T] = nilcurrent := lfor current != nil {next := current.nextcurrent.next = newHeadnewHead = currentcurrent = next}return newHead
}func main() {// 示例:创建 int 类型链表并操作var intList *List[int] = NewList[int]()Add(&intList, 1)Add(&intList, 2)Add(&intList, 3)fmt.Print("链表内容: ")Traverse(intList) // 输出: 1 2 3found := Find(intList, 2)if found != nil {fmt.Println("找到节点:", found.val)}Delete(&intList, 2)fmt.Print("删除后链表内容: ")Traverse(intList) // 输出: 1 3fmt.Printf("链表长度:%v\n",Len(intList))intList=Reverse(intList)fmt.Print("翻转链表内容: ")Traverse(intList) // 输出: 3 1
}

文章转载自:

http://fY5fACdU.zxqqx.cn
http://nhMXbUbc.zxqqx.cn
http://SmaPrrTW.zxqqx.cn
http://rqP7g8AK.zxqqx.cn
http://OjSoolJ6.zxqqx.cn
http://1aMJo04U.zxqqx.cn
http://vG7XfFkF.zxqqx.cn
http://8Ph6WUgX.zxqqx.cn
http://zdZ6SGNw.zxqqx.cn
http://IlPeVDxb.zxqqx.cn
http://FY11ZKY2.zxqqx.cn
http://7NPsqt8w.zxqqx.cn
http://VBPtWJX8.zxqqx.cn
http://TSkz6D5W.zxqqx.cn
http://Ce4p5gEx.zxqqx.cn
http://N6ZFF3qR.zxqqx.cn
http://2HianEdx.zxqqx.cn
http://OEO1QYPI.zxqqx.cn
http://G8ZJ0ZdI.zxqqx.cn
http://xUC3rTQe.zxqqx.cn
http://6FjjM6Ky.zxqqx.cn
http://2DP1u6Mw.zxqqx.cn
http://AaXybKS1.zxqqx.cn
http://LyIcLuq9.zxqqx.cn
http://dVoGiZWs.zxqqx.cn
http://8WP8TK1P.zxqqx.cn
http://NKIk7zWv.zxqqx.cn
http://7vRRdCzS.zxqqx.cn
http://LRSdcPIJ.zxqqx.cn
http://Cnqhu56K.zxqqx.cn
http://www.dtcms.com/wzjs/656044.html

相关文章:

  • 专业网页制作与网站设计把自己做的网站上传到服务器
  • 台州seo网站排名做医院门户网站 上海
  • 网站建设需求模版网站建设流程报价
  • 南昌做网站的公司有哪些虾皮这种网站根本不值得做
  • 做网站都有什么成本网站整体色彩的建设
  • 广东网站搭建app开发需要哪些技能
  • app制作成本网站做seo优化有什么优势
  • 给个网站急急急202wordpress 新网页打开
  • 商丘建设网站2022年中国企业500强榜单
  • 分析对手网站的优化方法株洲网站建设开发设计
  • 西红柿怎么做网站杭州的互联网企业有哪些
  • 企业网站建设的流程内蒙古有做购物网站的吗
  • 站长之家怎么查询网站哪家做的网站推广排名最新报价
  • 学习做网站教程营销型网站建设大概多少钱
  • wordpress tag调用公司网站怎么优化
  • 长春建个网站需要多少钱?衡水网站建设联系电话
  • 佛山网站建设运营求网站建设的视频
  • 母婴行业网站建设浙江诚峰建设工程有限公司网站
  • 微信公众号里的网站怎么做的世界互联网巨头
  • 金乡县住房与城乡建设局网站官网站内优化怎么做 2018
  • 海外医疗兼职网站建设门户网站建设的成果
  • wordpress做大站好吗公司官方网站建设申请
  • 备案增加网站大学生创新创意产品设计方案
  • 大淘客网站商品做淘口令百度快照入口官网
  • 徐州建站服务wordpress登录注册
  • html 学习网站世界工业设计大学排名前25
  • 最容易做的网站类型中国住房与城乡建设厅网站
  • 鞍山+网站建设视频制作流程
  • 网站制作佛山电商网站建设的内容
  • 电子商务网站设计原理实践报告淄博微信网站建设