From 60bc292fc0d578f72d18829417603fbd0e63a6e5 Mon Sep 17 00:00:00 2001 From: jack Date: Sat, 20 Apr 2019 22:33:54 +0800 Subject: [PATCH] 20190420 --- Week_01/id_93/is_anagram.go | 35 +++++++++++++ Week_01/id_93/longest_univalue_path.go | 72 ++++++++++++++++++++++++++ Week_01/id_93/max_imum_gap.go | 27 ++++++++++ Week_01/id_93/wiggle_sort.go | 36 +++++++++++++ 4 files changed, 170 insertions(+) create mode 100644 Week_01/id_93/is_anagram.go create mode 100644 Week_01/id_93/longest_univalue_path.go create mode 100644 Week_01/id_93/max_imum_gap.go create mode 100644 Week_01/id_93/wiggle_sort.go diff --git a/Week_01/id_93/is_anagram.go b/Week_01/id_93/is_anagram.go new file mode 100644 index 00000000..cb63799e --- /dev/null +++ b/Week_01/id_93/is_anagram.go @@ -0,0 +1,35 @@ +package main + +import "fmt" + +func isAnagram(s string, t string) bool { + if len(s) != len(t) { + return false + } + + sarr := make([]int ,26) + tarr := make([]int, 26) + + for i:=0; i=1; i-- { + if nums[i]-nums[i-1] > max { + max = nums[i]-nums[i-1] + } + } + + + return max +} + +func main() { + nums := []int{1,10000000} + fmt.Println(maximumGap(nums)) +} diff --git a/Week_01/id_93/wiggle_sort.go b/Week_01/id_93/wiggle_sort.go new file mode 100644 index 00000000..179bba26 --- /dev/null +++ b/Week_01/id_93/wiggle_sort.go @@ -0,0 +1,36 @@ +package main + +import ( + "fmt" + "sort" +) + +func wiggleSort(nums []int) []int { + if len(nums) < 2 { + return nums + } + ret := []int{} + sort.Ints(nums) + mid := len(nums)/2 + right := len(nums)-1 + left := mid-1 + for len(ret) < len(nums) { + if len(ret) < len(nums) { + ret = append(ret, nums[right]) + right-- + } + + if len(ret) < len(nums) { + ret = append(ret, nums[left]) + left-- + } + } + nums = ret + return nums + +} + +func main() { + nums := []int{1, 5, 1, 1, 6, 4} + fmt.Println(wiggleSort(nums)) +}