File tree Expand file tree Collapse file tree 1 file changed +24
-4
lines changed Expand file tree Collapse file tree 1 file changed +24
-4
lines changed Original file line number Diff line number Diff line change 2
2
# # functions do
3
3
4
4
# # Write a short comment describing this function
5
-
5
+ # # This function generate a list object including matrix x and cache functions with closure
6
6
makeCacheMatrix <- function (x = matrix ()) {
7
-
7
+ m <- NULL
8
+ set <- function (y ) {
9
+ x <<- y
10
+ m <<- NULL
11
+ }
12
+ get <- function () x
13
+ setsolve <- function (solve ) m <<- solve
14
+ getsolve <- function () m
15
+ list (set = set , get = get ,
16
+ setsolve = setsolve ,
17
+ getsolve = getsolve )
8
18
}
9
19
10
20
11
21
# # Write a short comment describing this function
12
-
22
+ # # if object x has a cache, return cache data
23
+ # # Or calcuate inverse matrix with solve function and save to cache
13
24
cacheSolve <- function (x , ... ) {
14
- # # Return a matrix that is the inverse of 'x'
25
+ # # Return a matrix that is the inverse of 'x'
26
+ m <- x $ getsolve()
27
+ if (! is.null(m )) {
28
+ message(" getting cached data" )
29
+ return (m )
30
+ }
31
+ data <- x $ get()
32
+ m <- solve(data , ... )
33
+ x $ setsolve(m )
34
+ m
15
35
}
You can’t perform that action at this time.
0 commit comments