Giter Club home page Giter Club logo

Comments (4)

kdn251 avatar kdn251 commented on May 8, 2024

Have it fixed for my next commit, thank you for pointing this out!

from interviews.

Triang3l avatar Triang3l commented on May 8, 2024

By the way, I'd also point out that compilers (not sure about the JVM though) seem to be much more likely to compile a t = x; x = y; y = t; sequence into a single exchange instruction without the temporary variable at all (or with it, if used with memory rather than local variables likely to be mostly register-only, but only with pure loads/stores), though I'm not sure if it's still true today (but seems like it is - https://gist.github.com/ericherman/9d1a646ad380b27d42b9ff8497e69f32), but either way it also wouldn't work with floating-point numbers and is just harder to read. I'd add an "avoid it" (in favor of std::swap) warning to it.

from interviews.

kdn251 avatar kdn251 commented on May 8, 2024

I believe you're right. I'll be sure to change it to 3 separate statements. Thank you!

from interviews.

Triang3l avatar Triang3l commented on May 8, 2024

I mean the whole idea is not recommended - and if asked in an interview, maybe it would be useful to mention its issues as well. But maybe not in case of JVM (though Android Runtime appears to be based on LLVM, so it's possible that common C++-ish optimizations are done by it).

from interviews.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.