补充上次的stdc++,Token,scanner_test
This commit is contained in:
parent
e6fb10125d
commit
4e8d942ca3
53
README.md
53
README.md
@ -228,6 +228,7 @@ a = point {x:24, y:43};
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## 2. 实现细节
|
## 2. 实现细节
|
||||||
|
|
||||||
### 2.1 词法分析的符号表结构
|
### 2.1 词法分析的符号表结构
|
||||||
@ -258,7 +259,8 @@ a = point {x:24, y:43};
|
|||||||
| tuple | 21 |
|
| tuple | 21 |
|
||||||
| print | 22 |
|
| print | 22 |
|
||||||
| println | 23 |
|
| println | 23 |
|
||||||
| | |
|
|
|
||||||
|
| |
|
||||||
| | |
|
| | |
|
||||||
| | |
|
| | |
|
||||||
|
|
||||||
@ -328,5 +330,54 @@ a = point {x:24, y:43};
|
|||||||
| 3 | my_vector |
|
| 3 | my_vector |
|
||||||
| 4 | ans |
|
| 4 | ans |
|
||||||
|
|
||||||
|
### Hydrogen样例
|
||||||
|
```Hydrogen
|
||||||
|
|
||||||
|
struct Point {
|
||||||
|
x:i8;
|
||||||
|
y:i8;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[Point:105] tmp;
|
||||||
|
fn MergeSort([Point:20] v,i8 l,i8 r) -> {
|
||||||
|
if l>r {
|
||||||
|
return ;
|
||||||
|
}
|
||||||
|
var mid = l + r >>1;
|
||||||
|
MergeSort(v,l,mid);
|
||||||
|
MergeSort(v,mid+1,r);
|
||||||
|
i8 i=l,j=mid+1,k=l;
|
||||||
|
for ;i <= mid && j <= r;k+=1 {
|
||||||
|
if v[l] < v[r]
|
||||||
|
{
|
||||||
|
tmp[k] = v[l];
|
||||||
|
l +=1;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
tmp[k] = v[r];
|
||||||
|
r += 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for ; i<=mid; {
|
||||||
|
tmp[k] = tmp[i];
|
||||||
|
k += 1,i+=1;
|
||||||
|
}
|
||||||
|
for ; j <=r ; {
|
||||||
|
tmp[k] = tmp[j];
|
||||||
|
k +=1 , j += 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
fn main()->i8{
|
||||||
|
[Point:20] d;
|
||||||
|
[Point] d;
|
||||||
|
|
||||||
|
for i8 i = 0;i< 20; i++ {
|
||||||
|
d[i] = {x:i * i,y:i};
|
||||||
|
}
|
||||||
|
MergeSort(d,d+20);
|
||||||
|
0
|
||||||
|
}
|
||||||
|
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user