Redian新闻
>
自闭症没什么的,不用治疗。我的导师小时候也是自闭症患者,他父母没有怎么治疗 他,现在他是正教授副院长,业界的大牛!
avatar
自闭症没什么的,不用治疗。我的导师小时候也是自闭症患者,他父母没有怎么治疗 他,现在他是正教授副院长,业界的大牛!# Parenting - 为人父母
p*2
1
我写了一个,有什么问题吗?
static void Merge(int[] arr, int start, int mid, int end)
{
int[] tmp = new int[arr.Length];
Array.Copy(arr, start, tmp, start, end - start + 1);
int left = start;
int right = mid + 1;
int current = start;
while (left <= mid)
{
if (right>end || tmp[left] <= tmp[right])
arr[current++] = tmp[left++];
else
arr[current++] = tmp[right++];
}
}
avatar
l*1
2
自闭症没什么的,不用治疗。我的导师小时候也是自闭症患者,他父母没有怎么治疗
他,现在他是正教授副院长,业界的大牛!
avatar
l*a
3
第一个问题是为什么要传mid
函数里自己算不好吗?

【在 p*****2 的大作中提到】
: 我写了一个,有什么问题吗?
: static void Merge(int[] arr, int start, int mid, int end)
: {
: int[] tmp = new int[arr.Length];
: Array.Copy(arr, start, tmp, start, end - start + 1);
: int left = start;
: int right = mid + 1;
: int current = start;
: while (left <= mid)
: {

avatar
c*y
4
我理解是,自闭症,很多都是学界非常有天赋。
所以要引导干预,好了长大就是有点个性的天才。不好了融入社会会有困难。

【在 l**1 的大作中提到】
: 自闭症没什么的,不用治疗。我的导师小时候也是自闭症患者,他父母没有怎么治疗
: 他,现在他是正教授副院长,业界的大牛!

avatar
q*x
5
没看懂。

【在 p*****2 的大作中提到】
: 我写了一个,有什么问题吗?
: static void Merge(int[] arr, int start, int mid, int end)
: {
: int[] tmp = new int[arr.Length];
: Array.Copy(arr, start, tmp, start, end - start + 1);
: int left = start;
: int right = mid + 1;
: int current = start;
: while (left <= mid)
: {

avatar
m*7
6
你导师有医生的诊断?
avatar
p*2
7
这是全部的代码
static void MergeSort(int[] arr)
{
if (arr == null || arr.Length == 1)
return;
Sort(arr, 0, arr.Length - 1);
}
static void Sort(int[] arr, int start, int end)
{
if (start >= end)
return;
int mid = (start + end) / 2;
Sort(arr, start, mid);
Sort(arr, mid + 1, end);
Merge(arr, start,end);
}
static void Merge(int[] arr, int start,int end)
{
int[] tmp = new int[arr.Length];
Array.Copy(arr, start, tmp, start, end - start + 1);
int mid = (start + end) / 2;
int left = start;
int right = mid + 1;
int current = start;
while (left <= mid)
{
if (right>end || tmp[left] <= tmp[right])
arr[current++] = tmp[left++];
else
arr[current++] = tmp[right++];
}
}
avatar
r*f
8
那就是个坑王

【在 m*********7 的大作中提到】
: 你导师有医生的诊断?
avatar
p*2
9
mid 的确可以自己算。我试试。

【在 l*****a 的大作中提到】
: 第一个问题是为什么要传mid
: 函数里自己算不好吗?

avatar
m*7
10
怪不得。大过节的...

【在 r*f 的大作中提到】
: 那就是个坑王
avatar
p*2
11

可以。看来interview exposed和careercup上的sample code还是有很多可以改进的地
方呀。

【在 l*****a 的大作中提到】
: 第一个问题是为什么要传mid
: 函数里自己算不好吗?

avatar
q*x
12
我不看他们的代码,只看思路。

【在 p*****2 的大作中提到】
:
: 可以。看来interview exposed和careercup上的sample code还是有很多可以改进的地
: 方呀。

avatar
p*2
13

你是大牛当然不一样了。啥时候也出本书吧,保证比那两本卖得好。

【在 q****x 的大作中提到】
: 我不看他们的代码,只看思路。
avatar
l*a
14
arr.length<=1 是不是更好?
merge这个函数还是用5个参数好点,比较直接(这里跟那个mid不一样)
merge( int[],int start1,int end1,int start2,int end2)

【在 p*****2 的大作中提到】
: 这是全部的代码
: static void MergeSort(int[] arr)
: {
: if (arr == null || arr.Length == 1)
: return;
: Sort(arr, 0, arr.Length - 1);
: }
: static void Sort(int[] arr, int start, int end)
: {
: if (start >= end)

avatar
p*2
15
嗯。是应该<=1。merge标准是5个参数吗?书上是4个。

【在 l*****a 的大作中提到】
: arr.length<=1 是不是更好?
: merge这个函数还是用5个参数好点,比较直接(这里跟那个mid不一样)
: merge( int[],int start1,int end1,int start2,int end2)

avatar
r*t
16
不该递归吧
avatar
l*a
17
不递归咋玩?

【在 r****t 的大作中提到】
: 不该递归吧
avatar
i*e
19
merge sort 是要递归的。
那个代码有个隐含条件,数组的大小必须是 2 的平方。
那个应该不叫merge sort吧,看上去像是 O(n^2) 的算法。

【在 r****t 的大作中提到】
: http://www.algorithmist.com/index.php/Merge_sort.c
avatar
r*t
20
这网页我随手 google 的,sort 部分写的不好。
工业界实用的 merge sort 应该没有递归实现的,复杂度同样是 O(nlogn)

【在 i**********e 的大作中提到】
: merge sort 是要递归的。
: 那个代码有个隐含条件,数组的大小必须是 2 的平方。
: 那个应该不叫merge sort吧,看上去像是 O(n^2) 的算法。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。