File tree Expand file tree Collapse file tree 2 files changed +16
-2
lines changed Expand file tree Collapse file tree 2 files changed +16
-2
lines changed Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ import { Direction } from "https://deno.land/std@0.173.0/collections/binary_sear
2
2
import RedBlackTreeExtended from "../dinner-plate-stacks/RedBlackTree.ts" ;
3
3
import { MultiRedBlackNode } from "./MultiRedBlackNode.ts" ;
4
4
5
+
5
6
export class MultiRedBlackTree < T > extends RedBlackTreeExtended < T > {
6
7
root : MultiRedBlackNode < T > | null = null ;
7
8
getRoot ( ) : MultiRedBlackNode < T > | null {
Original file line number Diff line number Diff line change @@ -2,6 +2,7 @@ import { reverseInOrderIterator } from "../dinner-plate-stacks/reverseInOrderIte
2
2
import { InOrderIterator } from "./InOrderIterator.ts" ;
3
3
import { MultiRedBlackTree } from "./MultiRedBlackTree.ts" ;
4
4
5
+
5
6
class MKAverage {
6
7
total = 0 ;
7
8
m : number ;
@@ -30,6 +31,15 @@ class MKAverage {
30
31
this . total += num ;
31
32
this . count ++ ;
32
33
// debugger;
34
+ const root = this . tree . getRoot ( ) ;
35
+ if ( ! root ) throw Error ( "null root" ) ;
36
+ {
37
+ const temp : [ number , number ] [ ] = [ ] ;
38
+ for ( const node of InOrderIterator ( root ) ) {
39
+ temp . push ( [ node . value , node . count ] ) ;
40
+ }
41
+ console . log ( JSON . stringify ( temp ) ) ;
42
+ }
33
43
}
34
44
35
45
calculateMKAverage ( ) : number {
@@ -40,11 +50,14 @@ class MKAverage {
40
50
if ( ! root ) throw Error ( "null root" ) ;
41
51
{
42
52
const temp : [ number , number ] [ ] = [ ] ;
43
- for ( const node of reverseInOrderIterator ( root ) ) {
53
+ for ( const node of InOrderIterator ( root ) ) {
44
54
temp . push ( [ node . value , node . count ] ) ;
45
55
}
46
56
console . log ( JSON . stringify ( temp ) ) ;
47
- } // console.log(root)
57
+ }
58
+
59
+
60
+ // console.log(root)
48
61
let k = this . k ;
49
62
50
63
for ( const node of InOrderIterator ( root ) ) {
You can’t perform that action at this time.
0 commit comments