mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-04 06:07:20 +08:00 
			
		
		
		
	Merge pull request #126 from msk397/master
function PrintSlice supports Generics
This commit is contained in:
		@ -8,12 +8,12 @@ import (
 | 
			
		||||
	. "github.com/krahets/hello-algo/pkg"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
// linerSearchArray 线性查找(数组)
 | 
			
		||||
/* 线性查找(数组) */
 | 
			
		||||
func linerSearchArray(nums []int, target int) int {
 | 
			
		||||
	// 遍历数组
 | 
			
		||||
	for i := 0; i < len(nums); i++ {
 | 
			
		||||
		if nums[i] == target {
 | 
			
		||||
		// 找到目标元素,返回其索引
 | 
			
		||||
		if nums[i] == target {
 | 
			
		||||
			return i
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
@ -21,10 +21,11 @@ func linerSearchArray(nums []int, target int) int {
 | 
			
		||||
	return -1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// linerSearchLinkedList 线性查找(链表)
 | 
			
		||||
/* 线性查找(链表) */
 | 
			
		||||
func linerSearchLinkedList(node *ListNode, target int) *ListNode {
 | 
			
		||||
	// 遍历链表
 | 
			
		||||
	for node != nil {
 | 
			
		||||
		// 找到目标元素,返回其索引
 | 
			
		||||
		if node.Val == target {
 | 
			
		||||
			return node
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,8 @@ import (
 | 
			
		||||
	"strings"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
func PrintSlice(nums []int) {
 | 
			
		||||
// PrintSlice Print a slice
 | 
			
		||||
func PrintSlice[T any](nums []T) {
 | 
			
		||||
	fmt.Printf("%v", nums)
 | 
			
		||||
	fmt.Println()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -59,7 +59,18 @@ comments: true
 | 
			
		||||
=== "Go"
 | 
			
		||||
 | 
			
		||||
    ```go title="linear_search.go"
 | 
			
		||||
 | 
			
		||||
    /* 线性查找(数组) */
 | 
			
		||||
    func linerSearchArray(nums []int, target int) int {
 | 
			
		||||
        // 遍历数组
 | 
			
		||||
        for i := 0; i < len(nums); i++ {
 | 
			
		||||
            // 找到目标元素,返回其索引
 | 
			
		||||
            if nums[i] == target {
 | 
			
		||||
                return i
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        // 未找到目标元素,返回 -1
 | 
			
		||||
        return -1
 | 
			
		||||
    }
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
=== "JavaScript"
 | 
			
		||||
@ -138,7 +149,19 @@ comments: true
 | 
			
		||||
=== "Go"
 | 
			
		||||
 | 
			
		||||
    ```go title="linear_search.go"
 | 
			
		||||
 | 
			
		||||
    /* 线性查找(链表)*/
 | 
			
		||||
    func linerSearchLinkedList(node *ListNode, target int) *ListNode {
 | 
			
		||||
        // 遍历链表
 | 
			
		||||
        for node != nil {
 | 
			
		||||
            // 找到目标结点,返回之
 | 
			
		||||
            if node.Val == target {
 | 
			
		||||
                return node
 | 
			
		||||
            }
 | 
			
		||||
            node = node.Next
 | 
			
		||||
        }
 | 
			
		||||
        // 未找到目标元素,返回 nil
 | 
			
		||||
        return nil
 | 
			
		||||
    }
 | 
			
		||||
    ```
 | 
			
		||||
 | 
			
		||||
=== "JavaScript"
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user