Problem 1689. Determine which fields have been modified in a structure
Given two input structures (s1, s2), determine which field values have been modified in s2 compared to s1. Your output should be a cell array of appropriate fieldnames and a cell array of the corresponding s2 field values. If s1 and s2 are identical (i.e. no values have been changed), return [] for both outputs.
Example
Suppose
s1.foo = 1; s1.bar = 2; s1.baz = 3;
and
s2.foo = 1; s2.bar = 0; s2.baz = 3;
then the correct output is
f = {'bar'}
v = {0}
Assumptions
- Inputs are scalar structures
- Inputs have identical fieldnames
- Field values can be numeric arrays, strings, or cell arrays
- The ith cell in output f corresponds to the ith cell in output v
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers23
Suggested Problems
-
2171 Solvers
-
3032 Solvers
-
Project Euler: Problem 10, Sum of Primes
2071 Solvers
-
Flip the main diagonal of a matrix
895 Solvers
-
Return elements unique to either input
801 Solvers
More from this Author44
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!